Java 从数据库列表视图中删除项
我在Android应用程序中遇到了一个问题。我只能删除ListView中的项目,但不能从数据库中删除。我需要一些帮助。我需要从我的数据库中删除它。这是我的密码:Java 从数据库列表视图中删除项,java,android,sqlite,android-listview,Java,Android,Sqlite,Android Listview,我在Android应用程序中遇到了一个问题。我只能删除ListView中的项目,但不能从数据库中删除。我需要一些帮助。我需要从我的数据库中删除它。这是我的密码: final ArrayAdapter<String> adapter = new ArrayAdapter<String>(getActivity(), android.R.layout.simple_list_item_1, strlist2); listContent.setA
final ArrayAdapter<String> adapter = new ArrayAdapter<String>(getActivity(),
android.R.layout.simple_list_item_1, strlist2);
listContent.setAdapter(adapter);
listContent.setOnItemClickListener(new AdapterView.OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
listContent.setChoiceMode(ListView.CHOICE_MODE_SINGLE);
listContent.setSelector(android.R.color.holo_blue_light);
listContent.setItemsCanFocus(false);
final int positionToRemove = position;
String string = String.valueOf(id);
dbAdapter.remove(string);
dbAdapter.delete123456(string);
adapter.remove(adapter.getItem(positionToRemove));
adapter.notifyDataSetChanged();
}
});
我需要帮助。我一整天都在用头撞墙。任何有关此问题的帮助都将不胜感激。请尝试这种方式
listContent.setOnItemClickListener(new AdapterView.OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
listContent.setChoiceMode(ListView.CHOICE_MODE_SINGLE);
listContent.setSelector(android.R.color.holo_blue_light);
listContent.setItemsCanFocus(false);
String[] delete = names2.get(position);
String idString = delete[0];
long idLong = Long.valueOf(idString);
Log.d("Deleting...", idLong + "");
dm.delete(idLong); // dm is your Datamanipulator class object
names2.remove(position);
stg1=new String[names2.size()];
int x=0;
String stg;
for (String[] dag : names2) {
stg = dag[1]+" - "+dag[2]+ " - "+dag[3]+" - "+dag[4];
stg1[x]=stg;
x++;
}
adapter.notifyDataSetChanged();
}
});
listContent.setOnItemClickListener(新的AdapterView.OnItemClickListener(){
public void onItemClick(AdapterView父对象、视图、整型位置、长id){
listContent.setChoiceMode(ListView.CHOICE\u MODE\u SINGLE);
setSelector(android.R.color.holo_蓝光);
setItemsCanFocus(false);
String[]delete=names2.get(位置);
字符串idString=delete[0];
long idLong=long.valueOf(idString);
Log.d(“删除…”,idLong+”);
dm.delete(idLong);//dm是数据操纵器类对象
名称2.移除(位置);
stg1=新字符串[names2.size()];
int x=0;
字符串stg;
对于(字符串[]dag:names2){
stg=dag[1]+“-”+dag[2]+“-”+dag[3]+“-”+dag[4];
stg1[x]=stg;
x++;
}
adapter.notifyDataSetChanged();
}
});
这里names2是您的字符串列表数组,请用您的数组名替换它的名称。请注意,您在本论坛中已经问了4次这个问题!!!!很抱歉,没有人回答我,这是另一个问题。我应该把这个
onListItemClick
?@Rohodude,检查更新的答案。问题是我没有列表数组,我只有一个数组。我只有一个适配器。我有strlist,但那是一个字符串。List names2=null代码>如果是这样,那么可以。这会导致nullpointerexception,因为列表为null。
listContent.setOnItemClickListener(new AdapterView.OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
listContent.setChoiceMode(ListView.CHOICE_MODE_SINGLE);
listContent.setSelector(android.R.color.holo_blue_light);
listContent.setItemsCanFocus(false);
String[] delete = names2.get(position);
String idString = delete[0];
long idLong = Long.valueOf(idString);
Log.d("Deleting...", idLong + "");
dm.delete(idLong); // dm is your Datamanipulator class object
names2.remove(position);
stg1=new String[names2.size()];
int x=0;
String stg;
for (String[] dag : names2) {
stg = dag[1]+" - "+dag[2]+ " - "+dag[3]+" - "+dag[4];
stg1[x]=stg;
x++;
}
adapter.notifyDataSetChanged();
}
});