我想根据可绘制的图像大小更改Imageview的高度和宽度 编程?我有两种类型的图像,一种是水平的,另一种是垂直的。默认情况下,我已经为垂直图像编写了我的xml代码,但我想通过java代码更改水平图像的图像视图高度和宽度。怎么做?
我的xml代码是
<RelativeLayout
android:paddingTop="47dp"
android:paddingBottom="48dp"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_centerInParent="true"
android:id="@+id/flipcardWrapper">
<ImageView
android:orientation="horizontal"
android:layout_width="365dp"
android:layout_height="match_parent"
android:layout_centerInParent="true"
android:layout_centerVertical="true"
android:id="@+id/imgtrans"
android:background="@android:color/transparent" />
和我改变图像视图高度和宽度的java代码是
imgview = (ImageView) findViewById(R.id.imgtrans);
Drawable d = getResources().getDrawable(R.drawable.image1);
int h = d.getIntrinsicHeight();
int w = d.getIntrinsicWidth();
if(d.getIntrinsicHeight()==797 && d.getIntrinsicWidth()==1218)
{
imgtrans.getLayoutParams().width=300;
imgtrans.requestLayout();
}
答案 0 :(得分:0)
设置两个水平图像,另一个图像垂直绘制。然后根据它设置图像查找屏幕方向
if(getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE){
Drawable d = getResources().getDrawable(R.drawable.imagehorizontal);
//set your other properties
}
if(getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT){
Drawable d = getResources().getDrawable(R.drawable.imagevertical);
//set your other properties
}
答案 1 :(得分:0)
在java代码中使用ViewGroup.LayoutParams.MATCH_PARENT。
$progress_file_path = './data/progress.txt';
if (file_exists($progress_file_path) && count(file($progress_file_path)) > 0) {
$scanned = file($progress_file_path);
$last = end($scanned);
$end = $limit + count($scanned);
} else {
$last = 'unset';
$end = $limit;
}