请问,如何在代码中设置 布局的高度。
比如说 通过以下代码获取屏幕高度后:
DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
int screenheight = dm.heightPixels;
screenheight /10; screenheight/12
为了自适应不同的手机屏幕大小,现在想在代码中以下设置布局的大小。
具体想
在代码中设置布局的大小:
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="50dp"
改为
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="screenheight /10"
把
<LinearLayout
android:id="@+id/linearLayout1"
android:layout_width="fill_parent"
android:layout_height="18sp"
改为
<LinearLayout
android:id="@+id/linearLayout1"
android:layout_width="fill_parent"
android:layout_height="screenheight/12 "
请问 在代码里边设置意思高度的属性应该怎么处理呢? 麻烦会的朋友详细说明下吧,谢啦。
图1 所示,就是要设置 L 和 h高度

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#FFFFFF"
android:orientation="vertical" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="50dp"
android:layout_gravity="center"
android:background="#CDAD00"
android:orientation="horizontal" >
<ImageView
android:id="@+id/imageText1"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_marginLeft="0.0sp"
android:src="@drawable/btn_back" />
<EditText
android:id="@+id/editView1"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_marginBottom="10.0dip"
android:layout_marginTop="10.0dip"
android:layout_weight="1.0"
android:background="@drawable/edittext_style" />
<ImageView
android:id="@+id/imageText1"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:src="@drawable/btn_search01" />
</LinearLayout>
<LinearLayout
android:id="@+id/linearLayout1"
android:layout_width="fill_parent"
android:layout_height="18sp"
android:background="@color/coral"
android:paddingBottom="10dip"
android:paddingTop="10dip" >
<TextView
android:id="@+id/textview_essence"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1.0"
android:gravity="center"
android:text="@string/essence"
android:textColor="@color/white"
android:textSize="18sp" />
<TextView
android:id="@+id/textview_policy"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1.0"
android:gravity="center"
android:text="@string/policy"
android:textColor="@color/lightwhite"
android:textSize="18sp" />
<TextView
android:id="@+id/textview_comment"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1.0"
android:gravity="center"
android:text="@string/forum"
android:textColor="@color/lightwhite"
android:textSize="18sp" />
<TextView
android:id="@+id/textview_data"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1.0"
android:gravity="center"
android:text="@string/data"
android:textColor="@color/lightwhite"
android:textSize="18sp" />
</LinearLayout>
<android.support.v4.view.ViewPager
android:id="@+id/forumpager"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="0.67"
android:background="#FFFFFF"
android:flipInterval="30"
android:persistentDrawingCache="animation" />
</LinearLayout>
------解决思路----------------------
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#FFFFFF"
android:orientation="vertical"
android:weightSum="12"
>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight="1.2"/>
<LinearLayout
android:id="@+id/linearLayout1"
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight="1"/>
------解决思路----------------------
用weight就可以方便的实现,weight你就可以理解为你布局延伸方向上的比例或者说权重。