选中的列表项仅显示一个值

时间:2012-05-03 11:08:43

标签: android string

我在列表中填入了一些字符串值。然后点击项目后...我能够看到所有选中项目的Toast消息......好吧问题是我要移动索引/字符串/位置到一个字符串并在下一个标签上显示...但在下一个标签上,它给了我首先检查的项目...

protected void onListItemClick(ListView l, View v, int position, long id) {
        //final ViewHolder viewHolder = new ViewHolder();
        SparseBooleanArray sp=getListView().getCheckedItemPositions();

        String str="";
        for(int i=0;i<sp.size();i++)
        {
            str+=items[sp.keyAt(i)]+",";
        }
        Toast.makeText(this, ""+str, Toast.LENGTH_SHORT).show();

        Product.pro_selected= l.getItemAtPosition(position).toString();;

我使用以下内容显示所有选定的项目..

txtPro=(TextView)findViewById(R.id.select_pro_name); 
                txtPro.setText(Product.pro_selected);

1 个答案:

答案 0 :(得分:0)

protected void onListItemClick(ListView l, View v, int position, long id) {

    ArrayList<String> itemSelected = new  ArrayList<String>();
    itemSelected.add(presidents[position]);
 }

此代码将从您导航到下一个活动/屏幕

    Intent i = new Intent(getApplicationContext(),Second.class);
    i.putStringArrayListExtra("SelectedItems", itemSelected);
    startActivity(i);
第二个活动中的

获取意图的值并使用它。

Intent intent = getIntent();
ArrayList<String> items = new ArrayList<String>();
items = intent.getStringArrayListExtra("SelectedItems");

这将显示所有选定的项目。

for (int i = 0; i < items.size(); i++) {

Toast.makeText(getApplicationContext(), String.valueOf(items.get(i)), Toast.LENGTH_SHORT).show();
}

要在List扩展ListActivity

中显示它们
ListView listView = getListView();
listView.setChoiceMode(listView.CHOICE_MODE_NONE);

setListAdapter(new ArrayAdapter<String>
                (this,android.R.layout.simple_list_item_1,items));

显示所选项目

    @Override
    protected void onListItemClick(ListView l, View v, int position, long id) {
        // TODO Auto-generated method stub
        Toast.makeText(getApplicationContext(), items[position], Toast.LENGTH_SHORT).show();
        super.onListItemClick(l, v, position, id);
    }