IT TIP

이미지 버튼이 프로그래밍 방식으로 변경됩니까?

itqueen 2021. 1. 10. 19:43
반응형

이미지 버튼이 프로그래밍 방식으로 변경됩니까?


프로그래밍 방식으로 ImageButton의 이미지를 변경하려고합니다.

이 코드를 복사하려고하는데 setBackgroundDrawable은 이미 더 이상 사용되지 않습니다.

public void giveClue(View view) {
    Drawable replacer = getResources().getDrawable(R.drawable.icon2);
    ((ImageButton) view).setEnabled(false);
    ((ImageButton) view).setBackgroundDrawable(replacer);
    gameAdapter.giveClue(game);
}

내 버튼은 다음과 같이 xml을 사용하여 생성되었습니다.

   <ImageButton
        android:id="@+id/ImageButton2"
        android:layout_width="24dp"
        android:layout_height="22dp"
        android:layout_alignTop="@+id/imageButton1"
        android:layout_toLeftOf="@+id/ImageButton3"
        android:src="@drawable/icon" 
        android:onClick="giveClue"/>

도와주세요.

감사합니다.


코드가 버튼의 배경을 변경하려고합니다. 이미지가 아닙니다. 두 가지 다른 것

  ((ImageButton) view).setImageResource(R.drawable.icon2);

나를 위해 작동하는 것을 시도하고, 프로그래밍 방식으로 배경 이미지를 변경하십시오.

 image.setBackgroundResource(R.drawable.ico);

안녕하세요 다음 코드를 사용할 수 있습니다.

if ( Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN ) 
{
    ((ImageButton) view).setImageResource(getResources().getIdentifier("icon2", "drawable", getPackageName()));
}
else 
{
    ((ImageButton) view).setImageDrawable(getDrawable(getResources().getIdentifier("icon2", "drawable", getPackageName())));
}

이것이 당신을 도울 것입니다.


이 방법으로 시도하십시오.

((ImageButton)보기) .setImageDrawable (replacer);


Kotlin을 사용하면 다음과 같이 할 수 있습니다.

val myImageButton = ImageButton(context).apply({
    background = null
    setImageDrawable(ContextCompat.getDrawable(context, 
                         R.drawable.ic_save_black_24px))
})

kotlin의 경우 이것은 나를 위해 작동합니다.

yourimagebuttonID.setImageResource(R.drawable.ic_check_black_24dp)

시험 ((ImageButton) view).setImageDrawable(replacer);

참조 URL : https://stackoverflow.com/questions/14233062/imagebutton-change-programmatically

반응형