我想制作480x800,600x800,600x1024和800x1280分辨率布局。
我必须以分辨率600x800,600x1024和800x1280显示方向(纵向和横向),分辨率480x800仅显示横向模式。
现在它正在显示两种方向模式。
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.nga.swp" android:versionCode="1" android:versionName="1.0">
<supports-screens android:resizeable="true"
android:largeScreens="true" android:normalScreens="false"
android:smallScreens="false" android:anyDensity="true" />
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".MainActivity"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
android:label="@string/app_name" android:windowSoftInputMode="adjustPan">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".PhraseListActivity"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
android:label="@string/app_name" android:windowSoftInputMode="adjustPan" />
<activity android:name=".ViewActivity" android:theme="@android:style/Theme.NoTitleBar"
android:label="@string/app_name" />
</application>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_LOGS" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-sdk android:minSdkVersion="8" />
</manifest>
我的问题是我如何才能以分辨率480x800显示横向模式。 在我的清单文件中我必须做些什么改变。
答案 0 :(得分:2)
使用条件布局的最佳方法是在/ res目录中使用限定目录名。
但在您的情况下,您需要更改活动的android:screenOrientation。唉,它在清单中,并且在您的活动布局中似乎不具备可选性。
所以,我想你必须在你的活动onCreate中使用代码。
首先使用以下方式获取屏幕尺寸:
Display display = getWindowManager().getDefaultDisplay();
int width = display.getWidth();
int height = display.getHeight();
然后使用以下方式有条件地调整屏幕方向:
if((width != 480) && (height !=800))
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
有关更多定位模式,请参阅ActivityInfo.screenOrientation
。
答案 1 :(得分:1)
我认为你应该做
layout-land
layout
将你的xml放入其中。
480x800,600x800,600x1024和800x1280分辨率布局..
你应该制作drawable-ldip, drawable-mdip, drawable-hdip
文件夹并将图像放入其中。
Android直接拍摄&amp;差异化的决议。
答案 2 :(得分:0)
首先使用以下方法检查您的设备分辨率:
Display display = ((WindowManager) getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay();
然后获得设备的高度&amp;宽度使用display.getHeight()
和display.getWidth()
。
进行下一步操作要容易得多。
您可以使用OrientationListener
来检查方向。