【发布时间】:2011-11-19 09:06:53
【问题描述】:
我在ViewGroup 中使用TextView,我正在使用ViewGroup 创建一个类似可滚动UI 的画廊。 TextView 的整个背景都填充了一种颜色。一切正常,除了当我将我的orientation 从portrait 更改为landscape 和portrait 时,TextView's 的原始大小保持不变,因此,绘图看起来迷失方向。但是一旦我平移或滚动,它就会重新更正。我的扩展 ViewGroup 的课程没有处理绘图部分,我尝试了以下方法:
- 使
ViewGroup无效。 - 使当前显示的视图无效。
- 实现
onConfigurationChanged(在 Manifest 中进行适当更改)。
我不想在配置更改时保存 currentState 后重新创建TextView 的过程。这是我在ViewGroup 中添加视图的代码 sn-p :-
final int[] backgroundColors = { Color.RED, Color.BLUE, Color.CYAN, Color.GREEN, Color.YELLOW };
for (int i = 0; i < 5; i++) {
TextView textView = new TextView(getApplicationContext());
textView.setText(Integer.toString(i + 1));
textView.setTextSize(100);
textView.setTextColor(Color.BLACK);
textView.setGravity(Gravity.CENTER);
textView.setBackgroundColor(backgroundColors[i]);
mWorkspace.addView(textView);
}
//mWorkspace.setSeparator(R.drawable.seperator);
setContentView(mWorkspace);
【问题讨论】:
-
您找到解决方案了吗?我有一个类似的问题 - 我在纵向模式下显示电池图形,使用
setBounds()“剪切”它,但是当我切换到横向并返回纵向时,会显示原始的“满”电池。以前的值不会被记住。
标签: android viewgroup android-view android-orientation