AndroidrecyclerView:如何保留selectableItemBackground以保持行高亮?
创始人
2024-10-09 18:01:42
0

要在RecyclerView的每一行上保留selectableItemBackground,需要在RecyclerView.Adapter的ViewHolder类中设置一个selector作为绑定的背景。

在ViewHolder中,您可以使用以下代码来设置selector:

public class MyViewHolder extends RecyclerView.ViewHolder { private final Context context; private final TextView myTextView;

public MyViewHolder(Context context, View view) {
    super(view);
    this.context = context;
    myTextView = (TextView) view.findViewById(R.id.myTextView);

    int[] attrs = new int[] { android.R.attr.selectableItemBackground /* index 0 */};
    TypedArray ta = context.obtainStyledAttributes(attrs);
    Drawable drawableFromTheme = ta.getDrawable(0 /* index */);
    myTextView.setBackground(drawableFromTheme);
    ta.recycle();
}

}

在上面的代码中,我们首先获取TypedArray,它包含在Android中默认的selectableItemBackground属性的背景drawable。然后,我们从typedArray中获取drawable并将其设置为row的背景,这样就可以保留高亮效果。

注意:要使此方法起作用,需要在XML布局文件中正确设置每个行的根布局属性:

android:clickable="true" android:focusable="true"

如果您的行布局不是根布局,则需要在布局中包含属性:

android:background="?android:attr/selectableItemBackground"

相关内容

热门资讯

针对!pokemmo辅助脚本(... 针对!pokemmo辅助脚本(透视)确实是真的辅助软件(有挂实锤)-哔哩哔哩小薇(辅助器软件下载)致...
今天上午!佛手在线大菠萝为什么... 今天上午!佛手在线大菠萝为什么都输(透视)确实有辅助app(今日头条)-哔哩哔哩小薇(辅助器软件下载...
透视辅助!pokemomo辅助... 透视辅助!pokemomo辅助软件(透视)总是真的有辅助插件(有挂详情)-哔哩哔哩1、首先打开pok...
围绕透视问题!wepokerp... 围绕透视问题!wepokerplus万能挂(透视)一直有辅助神器(有挂方针)-哔哩哔哩暗藏猫腻,小编...
透视游戏!德州透视脚本(透视)... 透视游戏!德州透视脚本(透视)一直存在有辅助辅助器(揭秘有挂)-哔哩哔哩;1、打开软件启动之后找到中...
透视科技!aa poker透视... 透视科技!aa poker透视软件(透视)好像是有辅助软件(有挂解密)-哔哩哔哩1、完成aa pok...
透视好友!aapoker发牌逻... 透视好友!aapoker发牌逻辑(透视)本来是真的辅助辅助器(有挂细节)-哔哩哔哩1、每一步都需要思...
事发当天!如何下载德普之星辅助... 事发当天!如何下载德普之星辅助软件(透视)好像是真的辅助安装(有挂细节)-哔哩哔哩所有人都在同一条线...
这一现象值得深思!pokerm... 这一现象值得深思!pokermaster辅助器(透视)其实是有辅助神器(的确有挂)-哔哩哔哩1、玩家...
事发当天!德扑之心免费透视(透... 事发当天!德扑之心免费透视(透视)一贯真的是有辅助软件(讲解有挂)-哔哩哔哩1、下载好德扑之心免费透...