我在RoomListFragment类中打开新活动时遇到问题。我使用导航抽屉。
这是我的RoomListFragment.class
public class RoomListFragment extends Fragment {
private View root;
public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
root = inflater.inflate(R.layout.fragment_rooms, container, false);
ListView listView = root.findViewById(R.id.listView);
RoomListAdapter adapter = new RoomListAdapter(root.getContext(),mTitle,mDescription);
listView.setAdapter(adapter);
return root;
}
void startRoomEditManagerActivity(Context context) {
Intent intent = new Intent(context, RoomEditManager.class);
startActivity(intent);
}
}
和我的第二堂课,这里有一个带有我活动功能的按钮startRoomEditManagerActivity
RoomListAdapter(Context roomListContext, String[] roomListName, String[] roomListDescription) {
super(roomListContext, R.layout.row, R.id.testTextView1, roomListName);
this.roomListName = roomListName;
this.roomListDescription = roomListDescription;
this.contextRoomList = roomListContext;
}
@Override
public void onClick(View v) {
editRoomButton.setText(roomListName[position]);
Toast.makeText(getContext(), roomListName[position] +" id : " + String.valueOf(editRoomButton.getId()),Toast.LENGTH_SHORT).show();
RoomListFragment roomlistFragment = new RoomListFragment();
roomlistFragment.startRoomEditManagerActivity(contextRoomList);
}
感谢您的帮助^^
用]替换onclick>
@Override public void onClick(View v) { editRoomButton.setText(roomListName[position]); Toast.makeText(getContext(), roomListName[position] +" id : " + String.valueOf(editRoomButton.getId()),Toast.LENGTH_SHORT).show(); Intent intent = new Intent(contextRoomList , RoomEditManager.class); startActivity(intent); }
然后,在您的roomlistFragment中,您不需要以下代码
void startRoomEditManagerActivity(Context context) {
Intent intent = new Intent(context, RoomEditManager.class);
contextRoomList.startActivity(intent);
}