0

帮助!!

我有一个带有详细视图的列表适配器,我遇到的问题是试图将值从 xml 文件传递​​到第二个视图。我目前可以这样做,但前提是我在第一个视图中显示这些值。我想要实现的是在 firstview 上只有一个标题,当您单击该标题时,它会将您带到详细视图,其中包含有关它的更多信息。

这是我目前拥有的代码。

ListAdapter adapter = new SimpleAdapter(this, menuItems,
            R.layout.list_item,
            new String[] { KEY_USERADDRESS, KEY_DATEDUE}, new int[] {
                    R.id.name, R.id.cost });
    setListAdapter(adapter);

    // selecting single ListView item
    ListView lv = getListView();

    lv.setOnItemClickListener(new OnItemClickListener() {

        //@Override
        public void onItemClick(AdapterView<?> parent, View view,
                int position, long id) {
            // getting values from selected ListItem
        //  String name = ((TextView) view.findViewById(R.id.name)).getText().toString();
            String cost = ((TextView)view.findViewById(R.id.cost)).getText().toString();
        //  String description = ((TextView) view.findViewById(R.id.desciption)).getText().toString();

            // Starting new intent
            Intent in = new Intent(getApplicationContext(), SingleMenuItemActivity.class);
            //in.putExtra(KEY_USERADDRESS, name);
            in.putExtra(KEY_DATEDUE, cost);
            //in.putExtra(KEY_DESC, description);
            startActivity(in);

        }
    });
}

如您所见,我有一个列表适配器,我只想在第一个视图上显示 KEY_USERADDRESS 的内容,当他们单击它时,将显示其余部分。如果我将其余的 Textviews 添加到 listadapter 它会使 textviews 变大。

对不起,如果我有点困惑,我在 android 开发方面仍然是一个菜鸟。

任何帮助将不胜感激!!

4

1 回答 1

1

假设您的数据存储在 menuItems Map 对象中,那么在您的 onItemClick() 中如何处理:

public void onItemClick(AdapterView<?> parent, View view,
            int position, long id) {
    //Your code here..
    Map<String, String> myValueMap = menuItems.get(position);

    // Starting new intent
    Intent in = new Intent(getApplicationContext(), SingleMenuItemActivity.class);
    in.putExtra(KEY_USERADDRESS, myValueMap.get(KEY_USERADDRESS));
    in.putExtra(KEY_DATEDUE, myValueMap.get(KEY_DATEDUE));
    in.putExtra(KEY_DESC, myValueMap.get(KEY_DESC));
    startActivity(in);
}

onItemClick 中的位置参数可用于从您使用创建 SimpleAdapter 来填充 ListView 的 menuItems 中获取所选地图

于 2012-04-06T16:01:04.577 回答