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

单击RecycerView项更改其样式

孟哲
2023-03-14

正如标题所说,当我单击按钮或RecycerView项目时,我想改变RecycerView项目的样式(不是在所有项目上,只是在单击的项目上)。应该看起来像

单击任一按钮后,隐藏透明覆盖并对该项目执行操作

共有1个答案

长孙燕七
2023-03-14

你好,我做了类似的事情,我有一个RecycerView,当一个项目被单击时,我需要更改背景,我做的是:在ViewHolder构造函数中,我添加了一个简单的OnClickListener:

public NoteViewHolder(View view) {
        super(view);
        name = view.findViewById(R.id.name);

        view.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                if (view.isSelected())
                    view.setSelected(false);
                else
                    view.setSelected(true);

                Log.d(TAG, "Clicked!");
            }
        });
    }

此时,you项的状态将在选中状态和未选中状态之间切换。现在您可以为背景添加一个选择器,在我的例子中,回收器项目布局如下:

<?xml version="1.0" encoding="utf-8"?>
  <TextView android:id="@+id/name"
  android:layout_width="match_parent"
  android:layout_height="wrap_content"
  android:text="nome"
  android:gravity="center"
  android:background="@drawable/selected_background"
  xmlns:android="http://schemas.android.com/apk/res/android"
/>

而selected_background是...一个选择器!在这里:

<selector xmlns:android="http://schemas.android.com/apk/res/android">
     <item android:state_selected="true" android:drawable="@color/selected"/>
</selector>
 类似资料:
  • 我有一个RecycerView与简单的项目-一个项目有一个图像,标题和按钮。当用户单击按钮时,它需要更改其布局->,指示按钮被单击(类似于复选框功能)。

  • 问题内容: 如何更改的上一个点击的时候? 我试图让3个按钮将样式分别更改为或或 我已经读过,但是我没有什么比我们只能 我发现Java中的字体类比应该的:S更复杂。 问题答案: 您需要调用not setStyle。 例如,如果要保留相同的字体,但更改名为“ field”的JTextField的样式,则可以执行以下操作: 编辑 要将字体设置为粗体和斜体,可以使用位图或位图: 请注意,这使用的是按位包含

  • 我有一个简单的问题。 单击搜索图标时,如何将工具栏的颜色/或主题更改为白色? 每当单击搜索图标时,我希望工具栏为白色(向后箭头为黑色/灰色)。我在MenuItem中添加了SearcView(android.support.v7.widget.SearchView) 到 然后回到原来的工具栏颜色时,单击返回按钮。

  • 问题内容: 可以更改按钮功能吗? 例如 点击,再点击一次 我已经尝试过类似,但没有结果。 我设法使叠加工作并在其中插入所需的数据。但是没有找到任何可以帮助我的帖子。我正在使用react-bootstrap。这是我的代码。 问题答案: 您可以尝试使用状态来存储颜色。也许这会让您想到解决问题的方法: 这是一个小提琴。

  • 问题内容: 说我有一个选项菜单,其中包含要连接的网络列表。 现在,当用户按下刷新按钮时,我想更新用户可以连接的网络列表。 我无法使用,因为我浏览了所有内容,但没有看到看起来像我所做选择的条目。 我不认为这可以使用tk变量来更改,因为没有这样的事情。 问题答案: 我修改了脚本以演示如何执行此操作: 单击“刷新”按钮后,将清除network_select中的选项,并插入new_choices中的选项。

  • 如何在单击项目时更改选项卡? bottom\u菜单。xml 从tabs.xml tabs.java StatTab片段: 无法解析名称newInstance() 谢谢你的任何帮助