智能电视开发Gridview无法上下滚动

来源:互联网 发布:双11数据直播 编辑:程序博客网 时间:2024/05/17 10:41
    要做一个观影券的页面,使用gridview做展示。如下图
  
   
 
   本以为很简单的一件事情,但是开发过程中,却遇到了难得一见的问题--Gridview居然无法上下滚动了。网上查了一些资料,好像没有人遇到过类似的问题。

   但是项目中另外一个页面却可以使用,最后仔细对比,查找两边的差异,发现引起问题的原因是Gridview上方的一个ImageButton,这个Button可以获得焦点,导致Gridview中的item中焦点异常。

  Gridview的焦点只会分配给可见item,那些不可见的item无法获得焦点,因而就无法滚动了。

   将Gridview上方抢焦点的组件focusable设置为false就可以了。

   Gridview的Item的OnItemClickListener也存在同样的问题,当Item中含有可以Button组件时,会导致OnItemClickListener的OnItemClick无效。
  
   要想查明问题的原因,估计需要看源码了。


  
  

0 0