アプリに 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" />
これは機能しているように見えますが、もちろん、私が望むことを正確に行うわけではありません。ビューは回転していますが、左端のすべてのアイテムが画面から外れています。縦向きモードで画面に合わせてルート レイアウトのサイズを動的に変更する方法はありますか?