0

我正在开发一个使用表格的应用程序。纵向是两列,横向是三列。我知道您可以使用 /res/layout-land 文件夹来更改视图,但未保存的数据会被重置。除了使用 /res/layout-land/mylayout.xml 之外,还有其他选择吗?

4

1 回答 1

0

如果您不想使用特定文件夹(如layout-land),您可以制作一个TableLayout包含三列(全部)的布局文件,然后根据手机的当前方向隐藏/取消隐藏其中一列。onCreate如果方向设置为landscape/ ,则在该方法中使折叠列出现/消失portrait

TableLayout tl = (TableLayout) findViewById(R.id.tableLayout1);
if (getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE) {
    // make the column appear, we're in landscape orientation
    tl.setColumnCollapsed(2, false);
} else {
    tl.setColumnCollapsed(2, true);
}

我不知道你想用这个实现什么,当手机转动时,活动仍然会像往常一样重新创建。

于 2012-05-26T06:25:35.503 回答