3

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

这是我的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 中明确地为它们分配了数字像素值也是如此。

4

1 回答 1

2

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

顺便说一句,不错的星际争霸主题。

于 2013-03-09T02:44:10.810 回答