2017-03-29 4 views
0

geprüft i dieses schwimmende Bild haben wieder in meinem Dienst
MyService.javaWie Bild ändern, wenn Checkbox

back = new ImageView(this); 
    back.setBackgroundResource(R.drawable.quick_launch_pressed_pink); 
    back.setImageResource(R.drawable.back); 

Ich möchte genannt durch den Aufruf MyService auf einer anderen Klasse die ImageResource ändern, aber meine Anwendung Kraft geschlossen. hier ist mein Code auf MainActivity.java

public void addListenerOnCb() { 

    chb = (CheckBox) findViewById(R.id.cb); 
    final MyService ms = new MyService(); 
    chb.setOnClickListener(new View.OnClickListener() { 

     @Override 
     public void onClick(View v) { 
      //is chkIos checked? 
      if (((CheckBox) v).isChecked()) { 
       ms.back.setImageResource(R.drawable.home); 
      } 

     } 
    }); 

} 
+1

Beitrag zu den Fehlern. –

+0

@AshwinMothilal Ich habe E.AndroidRuntime: bei f.myapp.Mainactivity $ 3.onClick (MainActivity.java:57) –

+1

das nicht genug ist. Wir brauchen eine vollständige Ausnahme, vorzugsweise und in Frage gestellt, nicht in einem Kommentar. –

Antwort

0

fügen Sie zwei unterschiedliche Bilder für & unkontrolliert in ziehbar erstellen XML-Datei checkbox_selected.xml in Ihrem ziehbar Ordner überprüft

checkbox_selected.xml

<?xml version="1.0" encoding="utf-8"?> 
<selector 
    xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:state_pressed="true" android:drawable="@drawable/remember_me_selected" /> 
    <item android:state_selected="true" android:drawable="@drawable/remember_me_selected" /> 
    <item android:state_activated="true" android:drawable="@drawable/remember_me_selected" /> 
    <item android:drawable="@drawable/remember_me" /> 
</selector> 

Imageview in url xml-Code

 <ImageView 
      android:id="@+id/remember_checkbox_img" 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_gravity="center" 
      android:layout_weight="0.3" 
      android:clickable="true" 
      android:src="@drawable/checkbox_selected" /> 
0

Verwendung dieses für CheckBox

checkBox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { 
         @Override 
         public void onCheckedChanged(CompoundButton compoundButton, boolean b) { 
          if(b) 
          { 
       // do something 
          } 
          else 
          { 
          // do another something 
           } 
         } 
        });