当前位置: 首页 > 知识库问答 >
问题:

最后选定的ListView项的颜色

岑俊明
2023-03-14

如何为列表视图的选定项指定颜色?我阅读了《创建导航抽屉》并下载了示例。他们使用android:background=“?android:attr/activatedBackgroundIndicator”。当我选择一个项目时,它的颜色一直是蓝色。当我选择之前选择的项目时,其颜色会发生轻微变化。

我需要的最小API是10。


共有1个答案

满自明
2023-03-14

您可以通过两种方式做到这一点:

1)通过为ListView创建一个项目并将其传递给适配器来使用check Boxcheck Box将自动处理检查和取消检查操作。

2) 使用适配器创建一个整数值来保持所选项目的位置,并在方法getView()中检查它以不同的颜色绘制

adapter.class:

    private static int selectedItemPosition = -1;

    public static void setSelectedITem(int i){
       selectedItemPosition = i;
    }

    public static void getSelectedITem(){
       return i;
    }

    @Override
public View getView(int position, View convertView, ViewGroup parent) {
    if(position == selectedItemPosition){
                //Highlight your item or ViewHolder
                textView.setBackgroungColor(R.color.gray);
        //Complete the actions
    return view;
}

然后从你的活动片段设置位置如下

listView.setOnItemClickListener(new OnItemClickListener() {
    @Override
    public void onItemClick(AdapterView<?> parent, View view,int position, long id) {
       adapter.setSelectedITem(position);
       adapter.notifyDataSetChanged();   
        }
    });

我希望有帮助

 类似资料:
  • 我试图在片段中创建自定义listView,我搜索了其他问题,但找不到任何东西。我的列表适配器是这样的 我的片段类是这样的: } 问题是这部分:CustomList adapter=新CustomList(tab1.this,string,imageId);构造函数(public CustomList(活动上下文,字符串[]web,整数[]imageId))只接受活动 我怎样才能解决这个问题?

  • “我的列表视图”项包含一个“删除”按钮,我在适配器中将其设置为从数据库中删除该项。完成后,如何刷新包含listView的片段以删除该项?相关代码如下: 删除适配器中的项功能: listview在我的片段中是这样设置的: 谢谢 更新: 现在我已经将子项目上的OnClickListener从适配器传递到片段ListView OnItemClickListener,如下所示: 更新适配器 更新片段 但现

  • 我正在将自定义ListFragment与自定义ArrayAdapter一起使用。 在中,我根据一个条件设置。 我还为该片段执行。因此,只有当arrayadapter为null时,我才在片段中创建arrayadapter的新实例。 一切正常。但是,当我旋转屏幕时,所选项目的颜色会丢失。我的意思是不应用中指定的颜色。 只有当我允许在循环时(通过移除空检查)再次创建适配器时,它才起作用。 我想到在中重用

  • 在关于同一主题的其他帖子之后,我实现了数组适配器的getView方法。但不幸的是,由于突出显示的行,应用程序停止了,因为如果我将其注释掉,应用程序不会崩溃。请帮助出了什么问题:- Logcat公司- 04-13 04:48:38.246 2870-2870/com。实例赛拉夫。附录3 E/AndroidRuntime﹕ 致命异常:主进程:com。实例赛拉夫。附录3,PID:2870 java。la

  • 我正在使用带有的,我想知道如何最有效地更改TabLayout中选定选项卡的图标的颜色。 谷歌的Youtube应用程序是如何实现这一点的完美参考。在主页上,有四个深灰色图标。选择特定选项卡后,选项卡图标变为白色。 没有任何第三方库,我怎样才能达到同样的效果? 一个可能的解决方案显然是用选择器。但是在这种情况下,我必须找到图标的白色和灰色版本,然后在选项卡被选中或取消选中时切换图标。我想知道是否有一个