【问题标题】:Single item selection from list view从列表视图中选择单个项目
【发布时间】:2011-04-25 06:49:44
【问题描述】:

我正在显示一个带有文本视图和图像视图的列表视图。图像视图被隐藏。我想要的是,当用户从列表视图中选择一个项目时,他会看到该列表视图项目中的图像。但是当他选择另一个项目时,他应该在那个特定的列表视图项目中看到该图像。我是这个,:::

    final String[] TYPE = new String[] { "Movie Top 100", "TV Top 100", "All" };

    ListView listview = (ListView) findViewById(R.id.typescreenlistview);
    listview.setAdapter((new ArrayAdapter(this, R.layout.typelist, R.id.heading, TYPE)));
    listview.setTextFilterEnabled(true);
    listview.setOnItemClickListener(new OnItemClickListener()
    {
      public void onItemClick(AdapterView arg0, View arg1, int arg2, long arg3)
      {
        ImageView click = (ImageView) arg1.findViewById(R.id.click);
        click.setImageResource(R.drawable.play);
      }
    });

我应该使用什么条件? 提前谢谢。

【问题讨论】:

  • 您想通过单击列表视图来显示图像吗?你能说清楚一点吗?
  • 我的列表中有 3 个项目,我希望当用户单击第一个项目时,图像会显示在该项目中,这将向用户显示该项目已被选中,然后当用户单击第二个项目时该项目应该有图像,但第一个项目现在不应该有图像......
  • 可以遍历listview项并设置隐藏和显示你想要的东西
  • 如果我理解正确,你想通过在列表视图上显示单击列表项的图像来指示用户。对吗?
  • 我建议你试试 Rajath 的回答……很完美

标签: android listview


【解决方案1】:

在您的ListView 中,每当用户点击某个项目时,使该项目中的ImageView 可见,如下所示:

    listview.setOnItemClickListener(new OnItemClickListener()
    {
      public void onItemClick(AdapterView arg0, View arg1, int arg2, long arg3)
      {
        ImageView click = (ImageView) arg1.findViewById(R.id.click);
        click.setVisibility(View.VISIBLE);
      }
    });

另外,我建议使用自定义适配器,以便在getView 中您可以将那些未点击的列表视图项设置为INVISIBLE。有关为ListView 使用自定义适配器的教程,请参阅Custom ListView items and adapters

【讨论】:

  • 我使用了高效的适配器,在它的获取视图方法中我称之为隐形 bt nthng 正在发生.....
  • public View getView(int position, View convertView, ViewGroup parent) { ViewHolder holder; convertView = mInflater.inflate(R.layout.typelist, null);持有人 = 新的 ViewHolder(); holder.text = (TextView) convertView .findViewById(R.id.heading); convertView.setTag(holder); holder.image = (ImageView) convertView.findViewById(R.id.click); convertView.setTag(holder); holder.image.setVisibility(View.INVISIBLE);
猜你喜欢
  • 2012-04-04
  • 2021-02-13
  • 1970-01-01
  • 1970-01-01
  • 2016-10-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多