请帮帮我。我在RelativeLayout中有自定义ImageView。 ImageView只占用屏幕的一部分。我使用.setImageBitmap(输入)来设置图像并可以拖动ImageView。 当我使用setScaleX和setScaleY使图像biger然后屏幕时,我的图像爬上其他视图(updateButton和其他ImageView)。如何在其他视图下方设置它。
自定义ImageView参数:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.eleizo.firstapplication.MainActivity"
android:id="@+id/topRL">
<TextView
android:id="@+id/info"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_marginLeft="10dp"
android:layout_marginBottom="10dp" />
<ImageButton
android:id="@+id/updateButton"
android:layout_width="30dp"
android:layout_height="30dp"
android:scaleType="fitXY"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true"
android:layout_marginRight="10dp"
android:layout_marginBottom="10dp"
android:src="@drawable/button_refresh_icon_72"
android:background="@null" />
</RelativeLayout>
在屏幕的底部,我有按钮和TextView。我希望ImageView不会爬上它们。为什么params.addRule(RelativeLayout.BELOW,)不起作用?
我的.xml:
WebDriverWait wait = new WebDriverWait(driver, 40);
wait.until(ExpectedConditions.elementToBeClickable(btnUpdateProductGroup));
btnUpdateProductGroup.click();
答案 0 :(得分:0)
您可以像这样使用addRule
,
params = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
this.setScaleX(2);
this.setScaleY(2);
//params.addRule(RelativeLayout.BELOW, [id of the view below]);
params.addRule(RelativeLayout.BELOW, R.id.updateButton);
setLayoutParams(params);
答案 1 :(得分:0)
试试这个
RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
this.setScaleX(1);
this.setScaleY(1);
params.addRule(RelativeLayout.BELOW, [id of the view below]);
layout.addView(tv1, params1);