定位在android?

时间:2012-12-27 06:52:56

标签: android android-layout orientation

我是Android的Orientation新手。到目前为止,我只为portrait模式工作过,现在我正在为两个方向工作。 我在清单文件中使用此方法进行定位:---

        <activity android:name=".Activity_name"
      android:configChanges="orientation|keyboardHidden">

问题是: -

我有两个布局文件夹 - 一个是layout&amp;对于两个方向,另一个是layout-land。    现在我运行我的应用程序有时需要布局xml文件两个方向和&amp;有时布局xml文件&amp; layout-land xml文件都有效。

如何解决此问题?

&安培;如果我使用此代码: -

@Override
  public void onConfigurationChanged(Configuration newConfig) {
    super.onConfigurationChanged(newConfig);
    if(newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE){
        setContentView(R.layout.login_landscape);
    }
    else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT) {
        setContentView(R.layout.login);         
    }
}

然后定向问题得到解决,但不再创建Activity,因此我的代码只能运行一次。我的按钮现在不工作了。 2.我的第二个问题是对于两个XML文件如何在配置方法中管理代码 我想知道Orientation的完整概念。 答案将得到高度赞赏。

谢谢&amp;温暖的问候, Deepanker Chaudhary

2 个答案:

答案 0 :(得分:0)

请确认以下几点:

  

机器人:configChanges   列出活动将自行处理的配置更改。在运行时发生配置更改时,默认情况下会关闭并重新启动活动,但声明具有此属性的配置将阻止活动重新启动。相反,活动仍在运行,并调用其onConfigurationChanged()方法。

答案 1 :(得分:0)

布局与纵向布局相同,它是布局端口文件夹。您无需处理布局文件以进行方向更改。您只需要保存方向更改数据并在显示时恢复它。您可以为两个方向使用相同的文件名。您可以从here获得一些帮助以进行方向处理。 check,也 this