package com.example.willow.myapplication5;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.CompoundButton;
import android.widget.ImageView;
import android.widget.ToggleButton;
public class MainActivity5 extends AppCompatActivity implements CompoundButton.OnCheckedChangeListener {
//设置控件对象对相关的控件进行操作
private ToggleButton tb;
private ImageView img;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main5);
//初始化控件
tb = (ToggleButton) findViewById(R.id.toggleButton);
img = (ImageView)findViewById(R.id.imageView);
/**
* 给当前的tb按钮设置监听事件(监听器)
*/
tb.setOnCheckedChangeListener(this);
}
//重写方法onCheckedChanged()
public void onCheckedChanged(CompoundButton buttonView,boolean isChecked){
/**
* 当tb被点击的时候,当前的方法会执行
*
* buttonView----代表被点击控件的本身
* isChecked---代表被点击的控件的状态
*
* 当点击这个tb的时候,更换img的背景
*
*/
img.setBackgroundResource(isChecked?R.drawable.on:R.drawable.off);
}
// @Override
// public void onPointerCaptureChanged(boolean hasCapture) {
// /**
// * 当tb被点击的时候,当前的方法会执行
// *
// * buttonView----代表被点击控件的本身
// * isChecked---代表被点击的控件的状态
// *
// * 当点击这个tb的时候,更换img的背景
// *
// */
// img.setBackgroundResource(hasCapture?R.drawable.on:R.drawable.off);
// }
// @Override
// public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
//
// }
}
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity5">
<!--textOff fluse状态 textOn ture状态 -->
<ToggleButton
android:id="@+id/toggleButton"
android:checked="false"
android:textOff="@string/Off"
android:textOn="@string/turn"
android:layout_width="match_parent"
android:layout_height="wrap_content"
tools:layout_editor_absoluteX="72dp"
tools:layout_editor_absoluteY="16dp" />
<!--android:src="@drawable/baign"-->
<ImageView
android:id="@+id/imageView"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:layout_editor_absoluteX="136dp"
tools:layout_editor_absoluteY="228dp" />
</android.support.constraint.ConstraintLayout>
<resources>
<string name="app_name">ToggleButton</string>
<string name="turn">开</string>
<string name="Off">关</string>
</resources>