我正在使用一个使用表格的应用程序。在肖像上它是两列,而不是横向三列。我知道您可以使用/ res / layout-land文件夹来更改视图,但会重置未保存的数据。除了使用/res/layout-land/mylayout.xml之外还有其他选择吗?
答案 0 :(得分: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);
}
我不知道你想要实现的目标,当手机转动时,活动仍将像往常一样重新创建。