如何在Android webview中制作方形大小的HTML表填充屏幕

时间:2013-08-09 22:00:09

标签: android html css android-layout

希望有人能帮助我。

在我的Android应用程序中,我有一个带有webview的片段(以及其他一些视图)。 webview显示带有HTML表的页面。这张桌子是一个游戏板,有8 x 8个单元格(如棋盘)。

问题是我希望表格尽可能地填满屏幕。但与此同时它也需要完美平方(宽度和高度必须保持不变)。

我该怎么做?在HTML中将宽度和高度设置为100%不会使其变为正方形。如果我将它们设置为固定数字,则不会在不同的屏幕尺寸上调整大小。我还尝试使用WebView.getWidth()来获取webview的大小,然后缩放表以填充它。但是在页面加载之前我无法知道webview的大小,在我知道webview的大小之前我无法加载页面...


其他一些细节(我不知道它们是否相关):

片段中的布局从Fragment.onCreateView中的布局文件中膨胀。然后,在Fragment.onActivityCreated中,我通过Java代码将webview添加到片段中。 HTML也是由Java代码动态创建的。

1 个答案:

答案 0 :(得分:0)

我终于找到了解决方法:

  1. 我没有尝试获取webview的大小,而是采用片段的大小并减去其他视图的大小。这为我提供了可用于webview的剩余空间。

  2. 即使在onResume中,所有维度都为零。所以在onResume中我创建了一个在半秒后运行的Handler。在这里,我创建了要显示的HTML文档。

  3. 我将HTML文档的大小设置为片段中可用空间大小的一半。 (我不知道为什么我需要减半。)

  4. 这是一个丑陋的解决方案,但它在我的手机和平板电脑上都可以在横向和纵向模式下工作。