当前位置: 代码迷 >> Android >> 请教关于怎么设置根据屏幕大小设置布局高度的有关问题
  详细解决方案

请教关于怎么设置根据屏幕大小设置布局高度的有关问题

热度:68   发布时间:2016-04-28 02:18:20.0
请问关于如何设置根据屏幕大小设置布局高度的问题
请问,如何在代码中设置 布局的高度。
 比如说  通过以下代码获取屏幕高度后:
     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你就可以理解为你布局延伸方向上的比例或者说权重。
  相关解决方案