Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/179.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
Android 添加listview项时出错_Android_Listview_Arraylist - Fatal编程技术网

Android 添加listview项时出错

Android 添加listview项时出错,android,listview,arraylist,Android,Listview,Arraylist,Listview项目停止自动更新我的列表。添加列表项时,我不必使用NOTIFYDATASETCHENGE(),它在不刷新屏幕的情况下得到更新。但在为我的代码添加数据库引用后,listview仅在我锁定和解锁手机时更新。我试着注释掉DataserReference代码,但它似乎仍然不起作用。有什么建议吗 更新:我已经附上下面的代码。使用NOTIFYDATASETCHANGE()后,列表会自动更新,但所有listview项都会更改为最近添加的项 ListView=findViewById(R

Listview项目停止自动更新我的列表。添加列表项时,我不必使用NOTIFYDATASETCHENGE(),它在不刷新屏幕的情况下得到更新。但在为我的代码添加数据库引用后,listview仅在我锁定和解锁手机时更新。我试着注释掉DataserReference代码,但它似乎仍然不起作用。有什么建议吗

更新:我已经附上下面的代码。使用NOTIFYDATASETCHANGE()后,列表会自动更新,但所有listview项都会更改为最近添加的项

    ListView=findViewById(R.id.swipemenu);
      HashMap<String,String> item = new HashMap<String,String>();
    ArrayList<HashMap<String,String>> list=new 
                    ArrayList<HashMap<String,String>>();
   SimpleAdapter adapter=new SimpleAdapter(this, list,
            R.layout.simplelist,
            new String[] { "line1","line2" },
            new int[] {R.id.text1, R.id.text2});
    ListView.setAdapter(adapter);

  item.put( "line1",result.getContents() );
                item.put( "line2","Qty:1" );
                list.add( item );
                adapter.notifyDataSetChanged();



   @Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    IntentResult result = IntentIntegrator.parseActivityResult(requestCode, resultCode, data);
    if (result != null) {
        if (result.getContents() == null) {
            Toast.makeText(this, "Result Not Found", Toast.LENGTH_LONG).show();
        } else {
            try {
                JSONObject obj = new JSONObject(result.getContents());

            } catch (JSONException e) {
                e.printStackTrace();

                item.put( "line1",result.getContents() );
                item.put( "line2","Qty:1" );
                list.add( item );
                adapter.notifyDataSetChanged();


            }
        }
    } else {
        super.onActivityResult(requestCode, resultCode, data);
    }
}
ListView=findviewbyd(R.id.swipmenu);
HashMap项=新建HashMap();
ArrayList list=new
ArrayList();
SimpleAdapter=新SimpleAdapter(此,列表,
R.layout.simplelist,
新字符串[]{“line1”,“line2”},
新的int[]{R.id.text1,R.id.text2});
setAdapter(适配器);
item.put(“line1”,result.getContents());
物品放置(“第2行”,“数量:1”);
列表。添加(项目);
adapter.notifyDataSetChanged();
@凌驾
受保护的void onActivityResult(int请求代码、int结果代码、意图数据){
IntentResult=IntentIntegrator.parseActivityResult(请求代码、结果代码、数据);
如果(结果!=null){
if(result.getContents()==null){
Toast.makeText(这是“未找到结果”,Toast.LENGTH_LONG.show();
}否则{
试一试{
JSONObject obj=新的JSONObject(result.getContents());
}捕获(JSONException e){
e、 printStackTrace();
item.put(“line1”,result.getContents());
物品放置(“第2行”,“数量:1”);
列表。添加(项目);
adapter.notifyDataSetChanged();
}
}
}否则{
super.onActivityResult(请求代码、结果代码、数据);
}
}

这种情况不正确,调试代码发布您的活动代码。我发布了代码。您是否在活动类中使用了
onResume
onRestart
方法?否,仅在OnActivityResult()中添加了项