如何在xml中找到布局的宽度和高度?

时间:2013-06-17 11:30:38

标签: android eclipse android-layout

enter image description here

在此图片中显示红色框,表示我正在显示ListView

如何显示列表视图以及如何查找图像的宽度和高度??

在这个红色框中,我显示ListView(如联系人),但我正在添加列表视图   运行。

如何在运行时找到红色框大小?

   <?xml version="1.0" encoding="utf-8"?>
  <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:id="@+id/cm"
  android:orientation="vertical" 
  android:layout_width="fill_parent"
  android:layout_height="fill_parent"
  android:background="@drawable/backbg"
  >


   <LinearLayout 
  android:orientation="vertical" 
  android:layout_width="fill_parent"
  android:layout_height="fill_parent"
  android:layout_marginTop="20dp"
  >


<AbsoluteLayout 
android:orientation="horizontal" 
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="55dp"
android:layout_gravity="center_horizontal"


  >

  <Button 
       android:id="@+id/ckbtn0"
       android:layout_width="54dp"
       android:layout_height="50dp"
       android:background="@drawable/back1"

       android:layout_marginLeft="2dp"
       android:layout_x="-1dp"
       android:layout_y="5dp"
    /> 



      <Button 
       android:id="@+id/refresh0"
        android:layout_width="54dp"
        android:layout_height="50dp"
        android:layout_gravity="center"
       android:layout_x="74dp"
       android:layout_y="5dp" 
       android:background="@drawable/refresh1"
      /> 
      <Button
    android:id="@+id/ImageView01" 
     android:layout_width="50dp"
    android:layout_height="36dp"
    android:background="@drawable/search1"
    android:layout_x="230dp" 
    android:layout_y="5dp">
    </Button>
              <EditText 
            android:layout_width="45dp"
            android:layout_height="50dp"
            android:id="@+id/cet0"
            android:imeOptions="actionSearch"
             android:layout_gravity="center"
            android:visibility = "gone"
            android:layout_x="297dp"
            android:layout_y="15dp" 
            android:singleLine="true" 
            android:imeActionLabel="Search"
            />


     <Button 
        android:id="@+id/ckbtn1"
        android:layout_width="54dp"
        android:layout_height="50dp"
         android:layout_gravity="center"
        android:background="@drawable/add"
        android:layout_x="429dp"
        android:layout_y="5dp" 
         /> 


    </AbsoluteLayout>

     <TextView
        android:layout_width="309dp"
        android:layout_height="15dp"
         />            






      <LinearLayout
      android:layout_width="match_parent"
      android:layout_height="490dp"
      android:gravity="top"
     android:orientation="vertical"
     android:background="@android:color/transparent"
     android:layout_marginTop="30dp"
      >

   <ListView android:id="@+id/clistview"  
   android:layout_height="match_parent"
    android:layout_width="match_parent"
   android:divider="#2867EA"
   android:dividerHeight="1dp"


    android:cacheColorHint="#00000000"
    >
  </ListView>
  </LinearLayout>



    <LinearLayout 
   android:orientation="horizontal" 
   android:layout_width="fill_parent"
   android:layout_height="wrap_content"
  android:background="@android:color/transparent"
  android:layout_marginTop="28dp"
  >


   <Button android:id="@+id/pbtn0"
    android:layout_width="76dp"
android:layout_height="35dp"
   android:layout_gravity="bottom"
  android:background="@null"
    android:layout_x="-1dp"
android:layout_y="393dp"

    />


     <Button android:id="@+id/nbtn1"
      android:layout_width="53dp"
  android:layout_height="33dp"
     android:layout_marginLeft="190dp"
     android:background="@null"
      android:layout_gravity="bottom"
     android:layout_x="300dp"
android:layout_y="450dp" 

    />

    </LinearLayout>




    </LinearLayout>   

    </LinearLayout>

1 个答案:

答案 0 :(得分:2)

你的布局有点凌乱,我们最好修复这个问题,但要显示你的listView,请执行以下操作:

ListView listView = (ListView) findViewById(R.id.clistview); 
listView.setAdapter(yourAdapter);

查看BaseAdapter

另一个建议不要手动设置宽度和高度,因为你不知道设备的大小,最好使用fill_parent,wrap_content或使用weigth来控制它。

我对您的布局进行了一些更改,看看并将图像放在组件中:

代码:

<LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="0dp"
    android:layout_marginTop="50dp"
    android:layout_weight="0.2"
    android:orientation="horizontal" >

    <Button
        android:id="@+id/ckbtn0"
        android:layout_width="54dp"
        android:layout_height="50dp" />

    <Button
        android:id="@+id/refresh0"
        android:layout_width="54dp"
        android:layout_height="50dp" />

    <Button
        android:id="@+id/ImageView01"
        android:layout_width="50dp"
        android:layout_height="36dp" >
    </Button>

    <EditText
        android:id="@+id/cet0"
        android:layout_width="45dp"
        android:layout_height="50dp"
        android:singleLine="true" />

    <Button
        android:id="@+id/ckbtn1"
        android:layout_width="54dp"
        android:layout_height="50dp"
        android:layout_y="5dp" />
</LinearLayout>

<TextView
    android:layout_width="fill_parent"
    android:layout_height="0dp"
    android:layout_weight="0.2"
    android:text="TextView" />

<LinearLayout
    android:layout_width="wrap_content"
    android:layout_height="0dp"
    android:layout_marginTop="5dp"
    android:layout_weight="1"
    android:background="@android:color/transparent"
    android:gravity="top"
    android:orientation="vertical" >

    <ListView
        android:id="@+id/clistview"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:cacheColorHint="#00000000" >
    </ListView>
</LinearLayout>


<LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="0dp"
    android:layout_marginTop="5dp"
    android:layout_weight="0.2"
    android:orientation="horizontal" >

    <RelativeLayout
        android:layout_width="wrap_content"
        android:layout_height="match_parent" >

        <Button
            android:id="@+id/pbtn0"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />


        <Button
            android:id="@+id/nbtn1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true" />
    </RelativeLayout>
</LinearLayout>