Android,添加高度百分比的视图

Mar*_*ars 3 java user-interface android android-view android-relativelayout

我想向父视图添加一个宽度为 100% 和 X%(例如:让它成为 40%)的视图

我有这个:

private RelativeLayout getParentView(){
    return (RelativeLayout) MyActivity.this.getWindow().getDecorView().getRootView();
}
Run Code Online (Sandbox Code Playgroud)

我应该将父视图转换为 LinearLayout 或 RelativeLayout 可以实现吗?

以及如何以编程方式以百分比设置“myView”宽度和高度?

谢谢

Sar*_*dhi 11

您可以通过简单地获取屏幕宽度来做到这一点

  public static int getScreenWidth(Context context) {
    DisplayMetrics displayMetrics = new DisplayMetrics();
    ((Activity)context).getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
    return displayMetrics.widthPixels;
}
Run Code Online (Sandbox Code Playgroud)

乘以百分比并给出参数以查看如下:

//For 40% height according to the screen width.
view.getLayoutParams().height = (int) (getScreenWidth(mContext) * 0.40);
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助。