2017-05-01 4 views
0

사용자가 클릭 할 때 Image를 변경하는 ImageButton을 만드는 데 3 시간이 걸렸지 만 나에게는 불가능합니다. 미리 감사드립니다! 홈페이지는 Clas사용자가 버튼을 클릭했을 때 ImageButton의 이미지를 변경하는 방법

protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    ImageButton dado_btn = (ImageButton) findViewById (R.id.dado_button); 

    replace = R.drawable.face_1; 
    dado_btn.setBackgroundResource(replace); 
} 

    public void OnClickTirada (View v){ 
     //this doesn't work at all 
     dado_btn.setImageDrawable(getResources().getDrawable(R.drawable.face_1));   
    } 

답변

0

dado_btn

onCreate()에 로컬로 정의되며, 따라서 당신은 다른 방법을 사용할 수 없습니다.

이 작업을하려면 코드가 컴파일 된 경우 이미 수행했을 수도있는 dado_btn 필드를 선언해야합니다. 두 번째 단계로 로컬 변수를 onCreate()에 선언하지 마십시오.

protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    dado_btn = (ImageButton) findViewById (R.id.dado_button); 
    ... 
} 
+0

이것은 나를 위해 일했습니다. 정말 고마워요! 나는 전에 물어야한다! 하하 – Rapinado

관련 문제