3
回答
实在是不知道该怎么解决了。。。大家帮帮忙吧。。万分感谢。。。
开发十年,就只剩下这套Java开发体系了   

由于 应用需要,该应用要在  机顶盒 上 使用,所以就 有 遥控器的 上下左右键  来选择view 移动焦点, 第一排 有 四个  spinner  ,一个编辑框,和一个button  ,现在想要实现  点击   键盘的 左键 ,焦点就会 移向  原来焦点所在的  左边的  view 上面。。。点击向 下键   焦点就 进入 gridview 中,这里可以使用上下左右键  选择  item ,如果 我把  EditText 的  fouceable 设置成  false ,点击 右键 就可以  进入 gridview 中,使用这四个键  来选择,但是这样的话  Edittext 就不能  获得焦点, 在虚拟机上  开启应用  焦点自动先获的 Edittext 的焦点,但是真机上  是先 获得   第一个spoinner  的焦点。。。(注:最关键的是 获得这些焦点以后 无论点击上下左右哪个键 焦点都不会移出去,因此 就无法选择 其他  view 对象

以下是我所有试过的 方法(均无效果):

其实这三种方法 第一种才是 控制上下左右键 选择 view 对像的  后面两种是 使得view 获得焦点  ,以下方法 都试过了  仍然 不管用

//第一种xml spinner 中加入 
           android:nextFocusLeft="@+id/SearchButtonID"
           android:nextFocusRight="@+id/GridViewID"
           android:nextFocusDown="@+id/GridViewID"

//第二种是在 xml 里面加入
                android:focusable="true"
		android:focusableInTouchMode="true"//Activity 代码块里面写 requestFocus()


//第三种:直接在Activity 里面写
                 typeSpinner.setFocusable(true);
		typeSpinner.requestFocus();
		typeSpinner.setFocusableInTouchMode(true);

举报
黛曦葛溪
发帖于6年前 3回/384阅
顶部