3

我被我的问题困住了。事情是它是一个自定义选项卡小部件。其中有多个选项卡,例如 Home- News- Abc- PQR

活动应为both orientation like portrait and landscape. 因此,每个选项卡都有two xml存储在的纵向和存储在的layout-port/file.xml横向layout-land/file.xml

为了管理从纵向到横向的方向,我android:configChanges="orientation|keyboardHidden"在每个活动中添加了规则标签。

  • TAB_SAMPLE.java选项卡文件。
  • TAB_GROUP_ACTIVITY每个选项卡组活动文件
  • file.java任务文件

毕竟这些东西我在这里遇到问题:

如果我addandroid:configChanges="orientation|keyboardHidden"rule tag in tab_sample活动那么它的工作完美。喜欢管理不同的视图。港口到陆地和陆地到港口,但它在 Home.java 中不起作用。

现在,如果我remove android:configChanges="orientation|keyboardHidden" rule tag in tab_sample活动,那么它适用于 Home 活动而不是 News.java

意思是当我改变方向时,它保持相同的 xml 表单端口不从 layout-land 使用。从某种意义上说,它再次调用 OnCreate()。

所以我发现may be issue is in Tab Widget.

更新

现在跟踪我的代码后,我发现主要问题在于网格视图活动,因为它唯一的活动不起作用。

Issue is between Tab host v/s Grid View. 我不知道为什么它不采用 layout-land xml 文件。我发现是同一个问题,但也没有重播该问题

请参阅 Detail manifestfile.xml 我想在所有活动中同时保持纵向和横向。

两个 XML 文件

请帮我解决这个问题。

4

1 回答 1

3

Oooohhh 最后我得到了上述问题的解决方案。这是非常困难的。

为了保持横向到纵向的方向状态,反之亦然,我们通常android:configChanges="keyboardHidden|orientation"在活动下添加属性标签。

但在这里,may be issue is Tab_Group_ Activity由于我无法在 GridView 中维护状态。Grid_File.java唯一一个没有处理所有其他工作正常的方向的java文件。

现在,如果我remove android:configChanges="keyboardHidden|orientation"从那时TAB_SAMPLE.java它只处理Grid_File.java其他人。

mean that was keeping same Layout XML in landscape also where i have two separate XML File.

这是我的解决方案:

我有add android:configChanges="keyboardHidden|orientation"以及TAB_SAMPLE.java 设置 implement onConfigurationChanged(Configuration newConfig)网格的列数。喜欢gridView.setNumColumns(6);

@Override
    public void onConfigurationChanged(Configuration newConfig)
    {
        super.onConfigurationChanged(newConfig);
        // gridView.setSelection(index);
        if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE)
        {

            // Log.e("On Config Change", "LANDSCAPE");
            gridView.setNumColumns(6);

        } else
        {

            // Log.e("On Config Change", "PORTRAIT");
            gridView.setNumColumns(4);
        }
    }

通常我们android:configChanges="keyboardHidden|orientation"在活动下添加标签,或者implementing onConfigurationChanged(Configuration newConfig)但在这里我已经写了两者。

于 2013-02-04T11:18:34.083 回答