请考虑给定代码的代码。 如何使这些图像高度为屏幕尺寸的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>
答案 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);