我有以下代码段:
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT));
params.setMargins(56, 0, 0, 0);
final float scale = context.getResources().getDisplayMetrics().density;
int pixels = (int) (48 * scale + 0.5f);
params.height = pixels;
standardTextView.setLayoutParams(params);
}
我发现LinearLayout.LayoutParams只能从API 19(KitKat)获得。有没有办法可以在KitKat设备上面执行上述代码,遗憾的是我没有找到任何替代方案。
由于
答案 0 :(得分:1)
LinearLayout.LayoutParams在Api Level 1中添加,请参见此处:
http://developer.android.com/reference/android/widget/LinearLayout.LayoutParams.html
但你可以用一个新的:
创建你的参数new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.MATCH_PARENT);
如果你想以像素为单位应用高度,只需立即使用:
new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, pixels);
答案 1 :(得分:0)
LinearLayout.LayoutParams自API级别1以来一直存在。
只要您不使用以前版本中未提供的任何其他API,您就可以在较低版本中使用它而不会出现问题。