0

Mainとcontrol.javaの2つのクラスがあります。Mainクラスは、アプリをビルドするActivityクラスであり、他のクラスからアクセスする必要のある変数コントロールに使用するコントロールクラスです。

問題は次のとおりです。クラスMainに2つのメソッドがあり、それぞれにImageViewがあり、最初のメソッドのクリックリスナーに2番目のメソッドの画像ビューリソースを設定する必要があります。このような:

public void first() {
    final ImageView first = (ImageView) findViewById(R.id.myview);
    first.setBackgroundResource(R.drawable.myimage);
}

public void second() {
    final ImageView second = (ImageView) findViewById(R.id.myview2);
    //And then, I want something like this: first.setBackgroundResource(first);
}

みんなありがとう!

4

2 に答える 2

0

あなたの質問に少し混乱していることは認めますが、少なくとも以下はあなたが探しているものの始まりだと思います

@Override
protected void onCreate(Bundle savedInstanceState) {
    control.setImageView((ImageView) findViewById(R.id.myview));
    second = (ImageView) findViewById(R.id.myview2);
}
public void first() {

    control.getImageView().setBackgroundResource(R.drawable.myimage);
}

public void second() {
    second.setBackgroundDrawable(control.getImageView().getDrawable());
}

ImageView second;
于 2012-04-25T22:26:31.010 に答える
0

次のようなことをしてみませんか。

public void second() {
    最終的な ImageView 2 番目 = (ImageView) findViewById(R.id.myview2);
    最終的な ImageView 最初 = (ImageView) findViewById(R.id.myview);
    first.setBackgroundResource(R.drawable.myimage);
}

それ以外の場合は、プライベート/パブリック クラス変数を使用して、メソッドの外部で定義する必要があります。

于 2012-04-25T22:27:00.200 に答える