2013-02-14 2 views
0

안녕하십니까. 복수 선택 목록을 사용하고 있습니다. 어떤 버튼을 클릭해야할까요? 또는 unselect 버튼 클릭 이벤트에있는 모든 항목을안드로이드에서 연락처 선택을위한 객관식 목록 사용 방법 한 버튼으로 모든 연락처를 선택하는 방법

내 코드는 여러 선택 목록을 할 수있는 하나 t를 사용하고 여기

/** Called when the activity is first created. */ 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.contact_list); 

    findViewsById(); 
    PhoneContacts pc = new PhoneContacts(ContactList.this); 
    pc.readContacts(); 

    for (int i = 0; i < pc.allPhoneNumbers.size(); i++) { 

     _allNumberAndNameMergeList.add(pc.allContactName.get(i) + "\n" 
       + pc.allPhoneNumbers.get(i)); 
    } 
    adapter = new ArrayAdapter<String>(this, 
      android.R.layout.simple_list_item_multiple_choice, 
      _allNumberAndNameMergeList); 
    listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE); 
    listView.setAdapter(adapter); 

    button.setOnClickListener(this); 
} 

private void findViewsById() { 
    listView = (ListView) findViewById(R.id.list); 
    button = (Button) findViewById(R.id.testbutton); 
} 

public void onClick(View v) { 
    SparseBooleanArray checked = listView.getCheckedItemPositions(); 
    ArrayList<String> selectedItems = new ArrayList<String>(); 
    for (int i = 0; i < checked.size(); i++) { 
     // Item position in adapter 
     int position = checked.keyAt(i); 
     // Add sport if it is checked i.e.) == TRUE! 
     if (checked.valueAt(i)) 
      selectedItems.add(adapter.getItem(position)); 
    } 

    String[] outputStrArr = new String[selectedItems.size()]; 

    for (int i = 0; i < selectedItems.size(); i++) { 
     outputStrArr[i] = selectedItems.get(i); 
    } 


} 

}

안녕이다 내가 어떤 버튼을 클릭 이벤트 또는 방법을 모두 선택 취소 항목 버튼을 클릭 이벤트에 대한 모든 항목을 선택하는 방법을 나 되겠습니까 내가 포함됩니다 ArrayAdapter와와의 ListView 항목을 확장 사용자 정의 어댑터를 만들 것

답변

0

예를 들어, CheckBox. 내부 어댑터 클래스 getView() 메소드는 선택된 항목 위치를 처리하여 현재 위치의 객체를 가져오고 원하는 모든 작업을 수행 할 수 있습니다. 이 튜토리얼을보실 수 있습니다 - 12. ListView에서 여러 항목을 선택하기

http://www.vogella.com/articles/AndroidListView/article.html