【问题标题】:How to set the max height of a Layout in android?如何在android中设置布局的最大高度?
【发布时间】:2011-07-06 05:43:35
【问题描述】:
我必须像这样实现布局;如果其中的内容较少,则布局应该包装内容。如果内容超出某个大小,例如 300dp,则应将其设置为最大高度(300dp)并且能够滚动。如果没有任何解决方法,是否有任何属性可以这样做?
【问题讨论】:
标签:
android
xml
layout
css
【解决方案1】:
您可以找到设备的显示尺寸。根据显示大小可以设置layout params。例如,如果显示尺寸小于300dp,则可以将height设置为wrap content。如果大于300dp 表示将height 设置为300dp。
这里是示例代码:
WindowManager wm = (WindowManager) ctx.getSystemService(Context.WINDOW_SERVICE);
DisplayMetrics metrics = new DisplayMetrics();
wm.getDefaultDisplay().getMetrics(metrics);
//here you can get height of the device.
Log.d("check", metrics.heightPixels+"");
if(metrics.heightPixels< 300)
{
this.getWindow().setLayout(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT);
}
else {
this.getWindow().setLayout(LayoutParams.WRAP_CONTENT,300);
}
希望这篇文章能帮到你。