是否可以将图像视图高度设置为屏幕尺寸的1/3

时间:2014-05-21 11:47:43

标签: android xml

请考虑给定代码的代码。 如何使这些图像高度为屏幕尺寸的1/3。如果我使用适配器。 请参考图片

http://oi59.tinypic.com/fvi7p3.jpg

<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
          android:layout_width="match_parent"
          android:layout_height="wrap_content"
           android:paddingTop="0dip" android:layout_gravity="top"
         >


        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"    
            android:paddingBottom="5dp"
            android:paddingLeft="10dp"
            android:paddingTop="5dp" >

            <ImageView
                android:id="@+id/image"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:layout_gravity="left|top"
                android:scaleType="centerCrop"
                android:src="@drawable/ic_launcher" />
            <ImageView
                android:id="@+id/imaget"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_gravity="left|top"
                android:layout_weight="1"
                android:scaleType="centerCrop"
                android:src="@drawable/ic_launcher" />
        </LinearLayout>

</TableLayout>

3 个答案:

答案 0 :(得分:0)

您可以获取屏幕的宽度和高度,并为两者设置一个参数 layout_width和layout_height按钮。 如何??

Display display=((WindowManager)getSystemService(Context.WINDOW_SERVICE)).
                                      getDefaultDisplay();
    int width=display.getWidth();
    int height=display.getHeight();

//计算宽度和高度

Say For screen 240 * 320

buttonWidth=width/5;     result: buttonWidht=48;
 buttonHeight=height/10   result: buttonHeight=32;

使用LayoutParams对象,将宽度和高度设置为按钮。

现在,如果您在屏幕尺寸为320 * 480

的设备上运行此代码
 buttonWidth=width/5;     result: buttonWidht=64;
 buttonHeight=height/10   result: buttonHeight=48;

以及其他设备等等。

答案 1 :(得分:0)

也许看看你一小时前发布过的已经回答过的相同问题?

Is it possible to Adjust height of listview with respect to screen size when it is used with adapter

答案 2 :(得分:0)

试试这个。

        DisplayMetrics metrics = new DisplayMetrics();
        getWindowManager().getDefaultDisplay().getMetrics(metrics);
        int density = metrics.densityDpi;

        int width = 0, height = 0;
        metrics = new DisplayMetrics();        
         getWindowManager().getDefaultDisplay().getMetrics(metrics);

         //height is actual screen height
         height = metrics.heightPixels;     
         width = metrics.widthPixels;


         CustomAdapter mAdapter;
         //pass h to your adapter class and it will gives you the height as per you need
         h=height/3;
         mAdapter = new CustomAdapter(this,ImageArrayList1, ImageArrayList2,h);