2016-10-17 2 views
0

onLongClick을 사용하여 listView에서 목록을 관리하고 싶습니다. 툴바에 여러 항목을 선택하고 관리하려면 (선택시) 1 botton (제거)을 추가하고 싶습니다.fragmentActivity에서 toolbar를 사용하여 ListView에서 다중 선택 목록을 관리하는 방법

public class FragmentFragment extends Fragment { 
    private ListView listView; 
    private List<Schede> list; 
    private SchedeAdapter adapter; 
    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 
     View rootView = inflater.inflate(R.layout.fragment_layout, container, false); 
     FloatingActionButton fab = (FloatingActionButton) rootView.findViewById(R.id.fab); 
     fab.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       Intent intent = new Intent(getActivity(), SecondActivity.class); 
       startActivity(intent); 
      } 
     }); 
     listView = (ListView) rootView.findViewById(R.id.listView); 
     listView.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
      @Override 
      public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 
       Object object= list.get(position); 
       Toast.makeText(getContext(), object.getName() + "Clicked", Toast.LENGTH_SHORT).show(); 
      } 
     }); 
     listView.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() { 
      @Override 
      public boolean onItemLongClick(AdapterView<?> parent, View view, final int position, long id) { 
       Object object = list.get(position); 
       view.setSelected(true); 
       return false; 
      } 
     }); 
     listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE); 
     return rootView; 
    } 

    public void remove(int position){ 
     SharedPreferences pref = getActivity().getSharedPreferences("OBJECTS", Context.MODE_PRIVATE); 
     list.remove(position); 
     String listS = new Gson().toJson(list); 
     SharedPreferences.Editor edit = pref.edit(); 
     edit.putString("OBJECTS", listS); 
     edit.apply(); 
     adapter.notifyDataSetChanged();  
    }  

    public void refresh(){ 
     SharedPreferences pref = getActivity().getSharedPreferences("OBJECTS", Context.MODE_PRIVATE); 
     String string = pref.getString("OBJECTS", null); 
     if (string != null){ 
      Type type = new TypeToken<List<Object>>(){}.getType(); 
      list = new Gson().fromJson(string, type); 
      adapter = new ObjectAdapter(getContext(), list); 
      listView.setAdapter(adapter); 
     } 
    } 

    @Override 
    public void onResume(){ 
     super.onResume(); 
     refresh(); 
    }  
} 

을 ...하지만 내가 여러 항목을 (내가 XML에서 선택한 항목에 대해 서로 다른 배경색을 설정)을 선택하는 것을 허용하지 않습니다 : 나는이 코드를 시도합니다. 코드 작업의 나머지 부분은 제대로

편집 : 예 해결 Item (chat) selected with button in top (archive)

답변

관련 문제