我很难强迫我的应用在 Google TV 上使用纵向模式。我知道这在技术上不受支持,但我觉得我应该能够以某种方式手动执行此操作,尤其是看到 Google Play 上的某些应用程序成功地在系统范围内强制执行此行为(例如: https: //play.google.com/store/apps /details?id=com.coinsoft.android.orientcontrol和https://play.google.com/store/apps/details?id=nl.fameit.rotate&hl=en)。
在我的活动中,我正在做:
public void onStart() {
View root = findViewById(android.R.id.content);
Animator anim = AnimatorInflater.loadAnimator(this, R.anim.rotate_90);
anim.setTarget(root);
anim.start();
}
我的rotate_90.xml:
<?xml version="1.0" encoding="utf-8"?>
<objectAnimator xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="0"
android:propertyName="rotation"
android:repeatCount="0"
android:valueTo="90"
android:valueType="floatType" />
这似乎有效,但当然不能完全符合我的要求。视图已旋转,但最左侧的所有项目现在都在屏幕外。有没有办法动态调整根布局的大小以适应纵向模式的屏幕?