Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/189.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/133.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从数据库列表视图中删除项_Java_Android_Sqlite_Android Listview - Fatal编程技术网

Java 从数据库列表视图中删除项

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

我在Android应用程序中遇到了一个问题。我只能删除ListView中的项目,但不能从数据库中删除。我需要一些帮助。我需要从我的数据库中删除它。这是我的密码:

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();
        }
    });