i have this floating image called back in my service
MyService.java
back = new ImageView(this);
back.setBackgroundResource(R.drawable.quick_launch_pressed_pink);
back.setImageResource(R.drawable.back);
i want to change the ImageResource by calling MyService on another class, but my application force closed. here is my code on 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);
}
}
});
}
add two different images for checked & unchecked in drawable create xml file checkbox_selected.xml in your drawable folder
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" />
use this for CheckBox
checkBox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton compoundButton, boolean b) {
if(b)
{
// do something
}
else
{
// do another something
}
}
});
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.