首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在自定义布局中突出显示回收视图项目(获取焦点)

在自定义布局中突出显示回收视图项目(获取焦点)
EN

Stack Overflow用户
提问于 2017-08-26 14:41:15
回答 2查看 744关注 0票数 0

我正在为安卓电视开发一个应用程序。我创建了一个自定义视图,其中表示列表项(在RecyclerView中)。我怎样才能把注意力集中在我的项目上并突出它们(一个简单的例子就好了)?

我确实试着添加

代码语言:javascript
运行
复制
android:focusableInTouchMode="true"
android:focusable="true"

.xml文件,但我没有看到任何更改。

编辑:--我想通过dpad导航项目时获得焦点

EN

回答 2

Stack Overflow用户

发布于 2017-08-26 15:12:35

在你的适配器中,做这样的事情

代码语言:javascript
运行
复制
@Override
public void onBindViewHolder(ViewHolder viewHolder, int i) {

    viewHolder.YOUR_LAYOUT.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            // do whatever you want
            viewHolder.YOUR_LAYOUT.setBackgroundResource(R.drawable.ripple_effect);
        }
    });

}
票数 0
EN

Stack Overflow用户

发布于 2017-08-26 15:22:50

为什么不在listview或recycleview上使用setOnitemClicklistener。你可以这样做:

代码语言:javascript
运行
复制
ListView lv = getListView();
setContentView(lv);
lv.setOnItemClickListener(new OnItemClickListener()
{
@Override 
public void onItemClick(AdapterView<?> arg0, View view,int position, long arg3)
{ 
    Toast.makeText(Activity.this, "" + position, Toast.LENGTH_SHORT).show();

//========== Here you can change the color of selected item ========
TextView Tv_title = (TextView)view.findViewById(R.id.title);
Tv_title.setTextColor(Color.RED);
//====== Your can make any view color change here just like i did for textview ===


}
});

如果仍然无法获得可聚焦性,请尝试使用以下解决方案:

在列表中的第一个父级布局的XML文件中使用android:descendantFocusability="blocksDescendants"

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45896582

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档