2017-12-02 46 views
1

2つのImageButtonがあり、それぞれに異なる画像があります。基本的にImageButton2にImageButton1のイメージを表示させるJavaコードを見つける必要があります。私の周り暴れるしてきたが、私は魔法のコマンドは、このようなものであるべきだと思う:ImageButtonから別のImageButtonに画像を転送する

ImageButton2.setImageResource(ImageButton1.getImageAlpha()); 

ImageButton2.setImageResource(((BitmapDrawable) ImageButton1.getDrawable()).getBitmap()); 

int id = ImageButton1.getId(); 
ImageButton2.setImageResource(R.drawable.(id)); 

しかし、これらのコンパイルのどれも。答えは次のようなものでなければなりません。

ImageButton2.setImageResource(ImageButton1.getImageResource()); 

誰でも解決策をご覧ください。私はこの一日中働いています。ありがとう。以下の方法で達成することができ

答えて

2

:デフォルトでは

 

    Drawable drawable = imageButton1.getDrawable(); 
    Drawable mutatedDrawable = drawable.mutate(); 
    imageButton2.setImageDrawable(mutatedDrawable); 
 

を、ドローアブルが共有されます。 1つのドロウアブルが別のビューに添付された同じドロウアブルに影響しないように変更したい場合は、ドロウアブルを明示的にmutate()する必要があります。

+0

Niiii​​iiiii!それは完璧に働いた、ありがとう! – Pete