我正在使用ImageView
编写一个Android应用程序,当我尝试动态更改宽度和高度时,应用停止(中止)。我使用以下命令:
RelativeLayout.LayoutParams icon_horizontal = new RelativeLayout.LayoutParams(50, 50);
mec21h_icon2.setLayoutParams(icon_horizontal);
布局是相对的,那有什么不对?
答案 0 :(得分:0)
最好有一个堆栈跟踪,以便了解错误是什么。 没有这个,我可以猜测:
答案 1 :(得分:0)
我猜你试图在图像尺寸可见(已经显示)之后改变图像尺寸,如果是这样,你应该先调用方法requestLayout(); 即。
mImageView.requestLayout();
答案 2 :(得分:0)
单击按钮时重新调整图像大小。
activity_main.xml中
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/rel"
tools:context="com.testingpp.scannerbarcode.MainActivity">
<ImageView
android:id="@+id/imageview"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:onClick="button_one"
android:src="@drawable/btn_back"
/>
</FrameLayout>
MainActivity.java
public class MainActivity extends AppCompatActivity {
FrameLayout layout;
ImageView imageView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
imageView = (ImageView) findViewById(R.id.imageview);
layout = (FrameLayout) findViewById(R.id.rel);
}
public void button_one(View view)
{
FrameLayout.LayoutParams params = new FrameLayout.LayoutParams(50,50);
layout.setLayoutParams(params);
}
}
如果您使用的是Framents,那么请不要使用onClick of xml。在java中使用onClickListener。