如何解决方向问题?
我想要制作 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 分辨率显示横向模式。 我必须在我的菜单文件中进行哪些更改。
I want to make 480x800, 600x800, 600x1024 and 800x1280 resolution layouts.
i have to show both orientation(portrait and landscape) with resolution 600x800, 600x1024 and 800x1280 and resolution 480x800 show only landscape mode.
Right now it is showing both orientation mode.
<?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>
my issue is how i am able to show landscape mode only with resolution 480x800.
what changes i have to do in my menifest file.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
拥有条件布局的最佳方法是在 /res 目录中使用限定的目录名称。
但就您而言,您需要更改活动的 android:screenOrientation 。唉,它在清单中,并且似乎无法在您的活动布局中设置。
所以,我想你必须在你的活动 onCreate 中使用代码。
首先使用以下方法获取屏幕尺寸:
然后使用以下方法有条件地调整屏幕方向:
请参阅
ActivityInfo.screenOrientation
用于进一步的方向模式。The best way to have conditional layouts is by using qualified directory names inside the /res directory.
But in your case, you would need to change the android:screenOrientation of your activity. Alas, it is in the manifest and it does not seem to be setable in your activity layout.
So, I guess you have to use code in your activity onCreate.
First get the screen dimension using:
Then conditionally adapt screen orientation using :
See
ActivityInfo.screenOrientation
for further orientation modes.我认为你应该将
你的 xml 放入其中。
480x800、600x800、600x1024 和 800x1280 分辨率布局。
您应该创建
drawable-ldip、drawable-mdip、drawable-hdip
文件夹并将图像放入其中。Android直接拿&差异化分辨率。
I think you should make
put your xml in that.
480x800, 600x800, 600x1024 and 800x1280 resolution layouts for that..
you should make
drawable-ldip, drawable-mdip, drawable-hdip
folder and put your images in that.Android direct take & differentiated resolution.
首先,使用以下方法检查您的设备分辨率:
然后获取设备的高度和分辨率。宽度使用
display.getHeight()
和display.getWidth()
。进行接下来的操作就容易多了。
您可以使用 OrientationListener 来检查方向。
First of all check your device resolution by using:
Then get the device's height & width using
display.getHeight()
anddisplay.getWidth()
.It is much easier to do the next operations.
You can use
OrientationListener
in order to check the orientation.