首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >显示两个方向的不同布局

显示两个方向的不同布局
EN

Stack Overflow用户
提问于 2012-12-28 11:35:33
回答 3查看 165关注 0票数 0

在我的安卓应用程序中,我用相同的文件名设计了两个不同的布局,比如my_profile.xml,并存储在两个不同的目录中,即1) res/layout,2) res/layout-land。现在的问题是,如果我在纵向模式下开始活动,它会加载纵向模式布局,但更改方向后它不会更改布局,但如果我在横向模式下启动活动,它会加载横向布局,即完美。问题是只有当我改变方向时,它才不会自动处理它。有人能告诉我,问题出在哪里吗?

EN

回答 3

Stack Overflow用户

发布于 2012-12-28 11:44:34

检查以下各项:

1)在清单文件中检查活动中的以下行

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 android:configChanges="orientation|keyboardHidden|screenSize"

2)覆盖以下函数

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
@Override

    public void onConfigurationChanged(Configuration newConfig) {
        // TODO Auto-generated method stub
        super.onConfigurationChanged(newConfig);

        Log.d(tag,"onconfig");

        if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {

                   // do something
            Log.d(tag,"land");
        } else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT){
              // do something
        }
    }

-Preeya

票数 0
EN

Stack Overflow用户

发布于 2012-12-28 11:44:45

在manifest.xml中进行如下更改,,,

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<activity android:name=".myActivity" android:windowSoftInputMode="adjustPan" android:configChanges="keyboardHidden"></activity>

不要使用configuartionChanges="orientation“

就是这样。

票数 0
EN

Stack Overflow用户

发布于 2012-12-28 11:52:43

检查您的清单文件。如果您的活动中包含以下内容,则将其删除:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
android:configChanges="keyboard|orientation|screenSize"

orientation使活动采用相同的布局,而不是创建新的布局。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14068901

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文