使用相同的按钮单击在listview上添加新项目(来自其他应用程序的结果代码)

时间:2014-01-09 06:34:15

标签: android android-listview

本地集成条形码扫描仪(Zxing条形码)。在我的应用程序中,Onclick Scan按钮我需要扫描多个条形码并将它们(结果代码)添加到我的应用程序列表(使用arraylist),但第二次点击扫描按钮(Zxing app的调用意图)arraylist变得清晰,所以它在listview上的重写结果代码。 这是下面的代码。

     public void onActivityResult(int requestCode, int resultCode, Intent intent) {
        //retrieve result of scanning - instantiate ZXing object
     IntentResult scanningResult = IntentIntegrator.parseActivityResult(requestCode,resultCode,intent);

        if (scanningResult != null) {

            String scanContent = scanningResult.getContents();
                    barcode_content.setText(scanContent);
            barcodes.add(scanContent);
                            barcode_list.setAdapter(new adapter());
                        ((BaseAdapter)barcode_list.getAdapter()).notifyDataSetChanged();



    }
}

1 个答案:

答案 0 :(得分:0)

首先,每次进入onactivityResult时都不需要添加适配器。在oncreate中添加适配器,而不是仅通知适配器。

您的列表将变为空白,因为每次完成扫描时都要添加新的适配器。使您的适配器公开,并在更改列表数据后调用adapter.notifydatasetchange()。

在一行中,在OnactivityResult中删除此setadapter,并在Oncreate()中执行此操作并将该适配器公开。

如果有任何疑惑,请随时提出。