Per disabilitare le voci di elenco nella creazione di elenchi, è necessario sottoclasse da ArrayAdapter. Devi eseguire l'override dei seguenti metodi: isEnabled (int position)
class MenuAdapter extends ArrayAdapter<String> {
public boolean isEnabled(int position) {
// return false if position == positionYouWantToDisable
}
}
o in classe di attività
public class MainActivity extends Activity {
ListView listview;
ArrayAdapter<String> arrayadapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
listview = (ListView)findViewById(R.id.listView1);
button = (Button)findViewById(R.id.button1);
arrayadapter = new ArrayAdapter<String>(MainActivity.this,
android.R.layout.simple_list_item_1, subjects);
listview.setAdapter(arrayadapter);
listview.getChildAt(1).setEnabled(false);
}
}
fonte
2017-06-23 09:50:00
stai usando adattatore personalizzato per ListView ?? –
@ArmaanStranger yes – prabu
Quindi è necessario salvare quale elemento è selezionato e quindi modificare view.enable = false. e quando stai caricando o aggiornando listview, controlla una condizione che, se l'elemento della vista è uguale all'elemento cliccato, disabilitalo. –