3

したがって、基本的には、画像を表示したいだけで、その画像がクリックされたら、別の画像に置き換えたい (そして、2 つの画像の間を onClick で行ったり来たりしたい)。これは問題なく動作しますが、まったく同じサイズで表示したいのですが、何を試しても画面に同じサイズで表示されません。

これが私の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 に答える