0
我是新手Android開發人員,使用Android Studio,我試圖開發我的第一個應用程序。我想,如果點擊它從列表中刪除的項目,但我發現了以下異常/錯誤:Android:在ListView上使用setOnItemClickListener
Caused by: java.lang.RuntimeException: Don't call setOnClickListener for an AdapterView. You probably want setOnItemClickListener instead
at android.widget.AdapterView.setOnClickListener(AdapterView.java:783)
當我點擊鏈接「AdapterView.java:783」機器人工作室需要我這個界面如下:
public interface OnItemClickListener {
void onItemClick(AdapterView<?> var1, View var2, int var3, long var4);
}
我想實現的代碼是:
public void removeItem(View view){
/*
Sample:
// Is the view now checked?
boolean checked = ((CheckBox) view).isChecked();
*/
ListView vehiclesLst = (ListView) findViewById(R.id.vehicle_list);
ArrayAdapter<String> vehicleAdapter =
new ArrayAdapter<String>(this, R.layout.activity_vehiclelist, vehicleList);
vehiclesLst.setAdapter(vehicleAdapter);
vehiclesLst.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
String vehicleItem = ((TextView) view).getText().toString();
vehicleList.remove(vehicleItem);
}
});
}
我不明白的地方的代碼是找到setOnClickListener方法。有誰知道解釋發生了什麼的任何文檔?
我下我已經找到一個例子。這是它被證明的方式。我不清楚ListView中的值代表要傳入的位置。 – astevens009