我正在开发一个从网络上检索新闻文章并显示它们的应用程序。文章包含不同的部分、文本部分、图像等,所以我正在做的是解析文章,相应地创建视图(TextView、ImageView 等)并将它们添加到 LinearLayout。
尤其是在横向模式的平板电脑上,这看起来不太好,所以首先想到的是让它成为 2 列。
我的问题是:是否有一个库或一段好的代码可以做一些工作,例如测量我添加的视图的高度,在内容中从哪里选择一个好位置切换到第二列,注意右列不要比左列更深等?
图片说明。
我正在开发一个从网络上检索新闻文章并显示它们的应用程序。文章包含不同的部分、文本部分、图像等,所以我正在做的是解析文章,相应地创建视图(TextView、ImageView 等)并将它们添加到 LinearLayout。
尤其是在横向模式的平板电脑上,这看起来不太好,所以首先想到的是让它成为 2 列。
我的问题是:是否有一个库或一段好的代码可以做一些工作,例如测量我添加的视图的高度,在内容中从哪里选择一个好位置切换到第二列,注意右列不要比左列更深等?
图片说明。
抱歉,我误读了您的问题,您正在以编程方式构建布局。如this answer所示,您可以获得如下窗口尺寸:
Display display = getWindowManager().getDefaultDisplay();
Point size = new Point();
display.getSize(size);
int width = size.x;
int height = size.y;
然后,您可以找出一个看起来不错的阈值,以开始使用多个列,并使您的视图百分比与您测量的这些尺寸的百分比。
没有这样的库,因为它只是由 android 系统支持,但不是你的方式。
我们针对不同的屏幕尺寸使用片段和灵活的布局,简单而强大。
尝试阅读以下页面以获取详细信息。
http://developer.android.com/guide/practices/tablets-and-handsets.html