Nic*_*ick 1 java android android-studio android-tv
我计划在Android TV上发布游戏。我已经开发了游戏的主屏幕,其中包含一些按钮。
我需要的是每个按钮状态都有不同的可绘制对象。我只需要三个状态:
为了使不同的可绘制对象根据不同的按钮状态显示,我创建了以下.xml文件:
buttonquickgame.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true"
android:drawable="@drawable/greenbutton_focused" /> <!-- pressed -->
<item android:state_focused="true"
android:drawable="@drawable/greenbutton_focused" /> <!-- focused -->
<item android:drawable="@drawable/greenbutton" /> <!-- default -->
</selector>
Run Code Online (Sandbox Code Playgroud)
我已将此XML文件放置在res / drawable文件夹中。我完全遵循Google在这里提出的建议:https : //developer.android.com/training/tv/start/navigation.html
然后,将按钮的背景设置为先前的.xml文件,如下所示:
<Button
android:id="@+id/start"
android:layout_width="250.0dip"
android:layout_height="60.0dip"
android:layout_marginTop="20dip"
android:background="@drawable/buttonquickgame"
android:onClick="OnClickButton"
/>
Run Code Online (Sandbox Code Playgroud)
问题是应用程序加载,按钮具有默认状态图标,当我按下它时,它会正确显示按下的可绘制对象,但是无论如何它都不会显示聚焦的可绘制对象。
我已经尝试了一切。我什至要求以编程方式关注焦点,但不会出现聚焦的可绘制对象。我已经在模拟器和我的Sony Android TV中检查了此行为,但没有成功。
您对我在这里想念的东西有任何想法吗?
提前非常感谢您!
经过数小时的反复试验,我找到了可行的解决方案。
新的选择器xml文件如下:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true"
android:drawable="@drawable/orangebutton_pressed" /> <!-- pressed -->
<item android:state_focused="true"
android:drawable="@drawable/orangebutton_focused" /> <!-- focused -->
<item android:drawable="@drawable/orangebutton" /> <!-- default -->
<item android:drawable="@drawable/orangebutton_focused" android:state_focused="true" android:state_pressed="false" android:state_selected="true"/>
</selector>
Run Code Online (Sandbox Code Playgroud)
在“活动”中,我手动选择按钮并请求焦点,如下所示:
Button quick_start = (Button) findViewById(R.id.start);
quick_start.setSelected(true);
quick_start.requestFocus();
Run Code Online (Sandbox Code Playgroud)
现在,它在我的AndroidTV和模拟器上都可以正常工作。
如果您遇到类似的问题,希望这个答案可以为您节省一些时间!
| 归档时间: |
|
| 查看次数: |
1237 次 |
| 最近记录: |