Zajmuję prostą aplikację dla systemu Android, która tworzy ListView z wyboru następującoIsChecked() zachowanie dokładnie naprzeciwko w wersjach 2.3.6 i 4.2 android
listAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_multiple_choice,results);
this.setListAdapter(listAdapter);
ListView lv = getListView();
lv.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
lv.setOnItemClickListener(new OnItemClickListener(){
@Override
public void onItemClick(AdapterView<?> parent, View view, int position,
long id) {
CheckedTextView check = (CheckedTextView)view;
//The below code needed for running on AVD version 4.2
if(check.isChecked()) {
// Checkbox checked do something
}
else {
// Not checked. Do something
}
/* Exact opposite need on Samsung phone running 2.3.6
if(!check.isChecked()) {
// Checkbox checked do something
}
else {
// Not checked. DO something
} */
To jest naprawdę dziwne. W jaki sposób aplikacja będzie kiedykolwiek kompatybilna z obie wersje, gdy wymagają one całkowicie przeciwnych kontroli?
Proszę dać mi znać, jak sobie z tym poradzę. Każda pomoc zostanie doceniona.
To dziwne. Czy próbowałeś używać 2.3.3/2.3.6 AVD? –