Java android以编程方式重新绘制布局
我的布局有时不能正确定位元素。我尝试了很多解决方案,但唯一的解决方案是从一幅肖像画旋转到另一幅风景画,然后从一幅风景画旋转到另一幅肖像画。然后自动重新绘制布局,使其完美贴合。我设置了方向|键盘,这样内容就不会重新加载,只会重新绘制。如何像风景画一样重新绘制内容?多谢各位 编辑:我尝试了以下内容,但没有效果Java android以编程方式重新绘制布局,java,android,eclipse,Java,Android,Eclipse,我的布局有时不能正确定位元素。我尝试了很多解决方案,但唯一的解决方案是从一幅肖像画旋转到另一幅风景画,然后从一幅风景画旋转到另一幅肖像画。然后自动重新绘制布局,使其完美贴合。我设置了方向|键盘,这样内容就不会重新加载,只会重新绘制。如何像风景画一样重新绘制内容?多谢各位 编辑:我尝试了以下内容,但没有效果 getWindow().getDecorView().findViewById(android.R.id.content).invalidate(); getWindow().getDecor
getWindow().getDecorView().findViewById(android.R.id.content).invalidate();
getWindow().getDecorView().findViewById(android.R.id.content).requestLayout();
活动已在onCreatesetContentView(R.layout.main)上设置了主布局代码>
布局“main”包含一个TabHost和Admob。
布局“视图”包含一个webview(“id:myWebview”),如表1所示
而且还试图使它们无效!webview、布局主视图和布局视图以及崩溃您是否尝试重新启动
这将重新绘制整个布局。当屏幕方向改变时,Android将重新创建当前活动
试着打电话或打电话。否则就没有机会以编程方式重新发布视图。请仅调用并阅读类说明以了解更多信息。如果这是不安全或不好的做法,请纠正我。我也尝试了所有这些方法,出于绝望,我决定再次尝试调用我的onCreate,结果成功了。所以现在我将使用onCreate(null)
在更新数据时刷新视图。同样,请让我知道这是否是不安全或不好的做法,如果可能的话,一个工作的替代方案 “有时”是什么意思?是否有任何可复制的方法来获取错误?您是否尝试过requestLayout强制重新绘制布局?你能用一些示例代码来显示你使用的是什么类型的和视图吗?你可以尝试调用invalidate()
来强制一个视图重新绘制。这会导致调用setContentView()
吗?在kotlin中,我直接通过Id调用布局,即llHint.invalidate()
但它不起作用,我的意思是没有清晰的包含textview、edittext等的整个布局。
findViewById(android.R.id.content).invalidate();