我正在构建一个Android应用程序,该应用程序将用于由Android支持的Mini PC/Cyclone设备,我的一个要求是强制应用程序切换为纵向。我首先想到的是通过编程设定的方向,像这样:使用setRotation后设置宽度/高度
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
在平板电脑/手机,但不是在迷你/旋风PC的其中一期工程 - 方向保持景观。我接下来的想法是使用RelativeLayout(它是我的根容器)的setRotation()方法将其旋转90度 - 效果很好,但宽度/高度不适应屏幕的大小。我最终得到的是RelativeLayout旋转了90度,但宽度和高度仍然处于横向。我尝试通过设置它的LayoutParams手动设置RelativeLayout控件的宽度/高度,尽管整理了宽度,但高度不正确,因为它只占用一半的屏幕。这是我目前正在做的:
m_container.setRotation(-90);
RelativeLayout.LayoutParams portraitParams = new RelativeLayout.LayoutParams(Util.getDisplayHeight(MainActivity.this), Util.getDisplayWidth(MainActivity.this));
m_container.setLayoutParams(portraitParams);
getDisplayHeight/Width方法正确返回屏幕的宽度/高度。
任何人都可以指出我做错了/有任何建议如何正确地设置我的RelativeLayout m_container的宽度/高度?
非常感谢,
托尼
你有没有得到这个决议? – user1105748