我有一种情况,其中,如果Android设备是平板电脑,那么我希望启用方向(纵向和横向),而如果设备是手机,我希望方向仅限于纵向模式。 你能帮我怎么做?我们如何根据设备设置Android中的活动方向?
感谢, 尼西
我有一种情况,其中,如果Android设备是平板电脑,那么我希望启用方向(纵向和横向),而如果设备是手机,我希望方向仅限于纵向模式。 你能帮我怎么做?我们如何根据设备设置Android中的活动方向?
感谢, 尼西
您可以使用this类获取有关当前的构建,从系统属性中提取的设备信息。
要设置取向性,使用后的属性...
android:screenOrientation=["unspecified" | "user" | "behind" |
"landscape" | "portrait" |
"reverseLandscape" | "reversePortrait" |
"sensorLandscape" | "sensorPortrait" |
"sensor" | "fullSensor" | "nosensor"]
不起作用。这是在清单中硬编码!所以平板电脑和手机也一样。 – nithinreddy 2012-02-13 07:28:38
在实际运行程序之前,您无法动态设置方向。使用默认设置,可以根据设备偏好以及用户旋转屏幕的方式来改变设置。或者“nosensor”用于设备的首选方向。 – 2012-02-13 07:33:42
获取设备屏幕的宽度和高度,如果分辨率小于平板电脑,那么你可以设置的方向该应用程序肖像。
如果需要在活动的像素的显示尺寸,你可以使用的getSize:
Display display = getWindowManager().getDefaultDisplay();
Point size = new Point();
display.getSize(size);
int width = size.x;
int height = size.y;
如果没有一个活动,你可以通过WINDOW_SERVICE得到默认显示:
WindowManager wm = (WindowManager) ctx.getSystemService(Context.WINDOW_SERVICE);
Display display = wm.getDefaultDisplay();
if(width<= (resolution width of tablet) && height<=(resolution height of tablet))
{
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}
不给任何命令在清单基础上
android:screenOrientation
为什么downvote?这个答案不可能吗? – 2012-02-13 07:10:28
我认为这个工程..我会给它一个镜头..谢谢! – nithinreddy 2012-02-13 07:28:08
我只是这个自己的初学者,但也许可以通过针对特定的API级别或dpi来实现这一点?您可以为您定位的不同设备提供备用资源。
例如:
res/layout/main.xml
res/layout-xhdpi/main.xml
res/layout-v11/main.xml
的一个好文件,可以发现here。
你有2种方法:
a)创建组不同的布局和绘图的手机和平板电脑分开,并根据您所需要的方向设计它们。
b)在运行期间检查操作设备并设置方向。要检查设备,就下列参数进行检查和编程设定的方向,
(1) Build.VERSION.SDK_INT
(2) Configuration.SCREENLAYOUT_SIZE_MASK
试试这个 它完美对我.....
if (isXLargeScreen())
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
和 此功能在平板电脑和手机之间做出决定,在上面的IF中称为.....
public static boolean isXLargeScreen(Context context) {
return (context.getResources().getConfiguration().screenLayout
& Configuration.SCREENLAYOUT_SIZE_MASK) >= Configuration.SCREENLAYOUT_SIZE_XLARGE;
}
+ 1 for nice Concept。 – Praveenkumar 2012-02-13 06:48:48
检查http://stackoverflow.com/questions/4616176/android-orientation-change – 2012-02-13 06:54:45
和http://www.workingfromhere。com/blog/2009/03/30/orientation-sensor-tips-in-android/ – 2012-02-13 06:55:05