gpt4 book ai didi

android - 使用值更改 list screenOrientation

转载 作者:数据小太阳 更新时间:2023-10-29 02:40:47 24 4
gpt4 key购买 nike

我正在接受培训,通过资源以恒定值更改 list 中的 screenOrientation。这是我的 list 的一个 Activity :

<activity
android:name="it.wrapmobile.parcosigurta.NavActivity"
android:label="@string/app_name"
android:screenOrientation="@integer/orientation" >
</activity>

我想用这个常量改变我的屏幕方向 http://developer.android.com/reference/android/R.attr.html#screenOrientation , 10inch landscape, 7inch landscape, smartphonne portrait 所以我在 3 个不同的目录中创建了资源 xml:

值/整数.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
<integer name="orientation">1</integer>
</resources>

values-large/integer.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
<integer name="orientation">0</integer>
</resources>

values-sw600dp/integer.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
<integer name="orientation">0</integer>
</resources>

但在所有设备中,该应用始终是纵向的。我错了什么?谢谢你的帮助。

中号

最佳答案

您可以检测屏幕尺寸并以编程方式设置方向。这是一个例子:

public static void setActivityScreenOrientation(Activity act)
{
boolean isTablet = false;

if ((act.getResources().getConfiguration().screenLayout
& android.content.res.Configuration.SCREENLAYOUT_SIZE_MASK) == android.content.res.Configuration.SCREENLAYOUT_SIZE_LARGE)
{
isTablet = true;
}

if ((act.getResources().getConfiguration().screenLayout
& android.content.res.Configuration.SCREENLAYOUT_SIZE_MASK) == android.content.res.Configuration.SCREENLAYOUT_SIZE_XLARGE)
{
isTablet = true;
}


if (isTablet)
{
act.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
}else
{
act.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}
}

希望对您有所帮助。

关于android - 使用值更改 list screenOrientation,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22104958/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com