Android:尝试在两个图像之间切换并将它们显示为相同的大小

时间:2013-03-09 02:40:08

标签: android-layout

所以,基本上,我只是想显示一个图像,当点击该图像时,我想用另一个图像替换它(并在两个图像之间来回切换)。这样做很好,但我希望将它们显示为完全相同的大小,但无论我尝试什么,它们都不会在屏幕上显示为相同的大小。

这是我的java文件:

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    final ImageView baneling = (ImageView) findViewById(R.id.bane);
    baneling.setTag("alive");
    baneling.setClickable(true);
    baneling.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            if(baneling.getTag().equals("alive"))
            {
                baneling.setImageResource(R.drawable.banelingexplosion);
                baneling.setTag("dead");
                resizeImage(baneling);
            }
            else
            {
                baneling.setImageResource(R.drawable.baneling);
                baneling.setTag("alive");
            }
        }
    });
}

public void resizeImage(ImageView v)
{
    LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT,ViewGroup.LayoutParams.FILL_PARENT);
    v.setLayoutParams(layoutParams);
}

这是我的xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:padding="5dip" >
    <ImageView
            android:id="@+id/bane"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:src="@drawable/baneling" />
</LinearLayout>

我已经尝试了很多东西并成功调整了图像的大小,但是永远不能让它们具有相同的大小,即使为什么我在xml和.java中明确指定它们的数值像素值。< / p>

1 个答案:

答案 0 :(得分:2)

在ImageView中设置android:scaleType="fitXY"属性将确保您的图像填充ImageView的整个边界。这应该有助于明确设置图像的宽度和高度。

顺便说一下,好的星际争霸主题。