ListView.CHOICE_MODE_MULTIPLE_MODAL을 사용하여 setChoiceMode를 구현 한 응용 프로그램에서 listview를 사용하고 있습니다. 목록 뷰를 길게 누르면 항목을 선택할 수 있지만 그 이후에는 화면 방향이 변경되면 작업 표시 줄이 불편을 겪습니다.다른 방향에 대해 CHOICE_MODE_MULTIPLE_MODAL이있는 ListView- setChoiceMode
내 코드가 portrait mode & landscape mode이
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
adapter = new ItemListAdapter();
listView.setAdapter(adapter);
listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE_MODAL);
listView.setMultiChoiceModeListener(new AbsListView.MultiChoiceModeListener() {
@Override
public void onItemCheckedStateChanged(ActionMode actionMode, int position, long l, boolean b) {
final int checkedItemCount = listView.getCheckedItemCount();
actionMode.setTitle(checkedItemCount + " Selected");
/*get the selected items*/
}
@Override
public boolean onCreateActionMode(ActionMode actionMode, Menu menu) {
actionMode.getMenuInflater().inflate(R.menu.menu_listview_delete, menu);
return true;
}
@Override
public boolean onPrepareActionMode(ActionMode actionMode, Menu menu) {
return false;
}
@Override
public boolean onActionItemClicked(final ActionMode actionMode, MenuItem menuItem) {
switch (menuItem.getItemId()){
case R.id.delete_item:
/*delete selected items*/
return true;
default:
return false;
}
}
@Override
public void onDestroyActionMode(ActionMode actionMode) {
adapter.removeSelection();
}
});
}
이미지처럼 보이는, 그것은 다시 버튼을 누르면 deleted.then받지 않습니다 각각 선택한 항목을 삭제할 때 0 & 같은 항목을 선택 보여줍니다 (내 응용 프로그램 활동에서 구현 된 가로 모드에서) 작업 표시 줄 색이 흰색으로 바뀝니다. | 화면 크기 configChanges = "오리엔테이션 :
하나의 해결책은 매니페스트
안드로이드 아래 사용
(가로 모드에서 다른 방법을 선택 항목에 노력하고 세로 동일한을 삭제 회전 할 때 같은 일이 발생) "
오리엔테이션 변경시 활동이 다시 생성되지 않습니다. 세로 및 가로 레이아웃이 다르기 때문에 방향 변경시 활동 레크리에이션이 필요합니다.
나는 오리엔테이션 변경에 따라 활동이 재연되어 있기 때문에 setMultiChoiceModeListener을 매번 호출하기 때문에 문제가 있다는 것을 알고 있습니다.
누군가 문제를 해결할 수 있도록 도와 줄 수 있습니까? 감사!
내가이 전에 시도조차, 문제는 카운트 값이 복원 만 선택 될 것이다 항목이 삭제되지 않습니다. 다른 제안? – Black
어떤 사람이 도움이 될 수 있습니까? – Black
항목을 제거하는 코드는 어디에 있습니까? – InziKhan