使用ToggleButton实现开关效果
一、ToggleButton的基本属性 android:textOn=”开”——设置ToggleButton处于打开状态时的文本 android:textOff=”关”——设置ToggleButton处于关闭状态时的文本 二、实现步骤 1.创建一个ToggleButton控件和一个ImageView控件 这里先给ImageView设置初始状态
<ToggleButton android:textOn="开" android:textOff="关" android:id="@+id/toggleButton1" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="ToggleButton" /> <ImageView android:id="@+id/imageView1" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@drawable/off"/>2.初始化ToggleButton和ImageView
private ToggleButton tb; private ImageView img; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); tb = (ToggleButton) findViewById(R.id.toggleButton1); img = (ImageView) findViewById(R.id.imageView1); }3.给ToggleButton设置监听器,通过implements实现接口的方式实现监听
tb.setOnCheckedChangeListener(this); public class MainActivity extends AppCompatActivity implements CompoundButton.OnCheckedChangeListener{4.在OnCheckedChanged方法中设置当Button被点击时ImageView的显示变化
@Override public void onCheckedChanged(CompoundButton compoundButton, boolean isChecked) { img.setBackgroundResource(isChecked?R.drawable.on:R.drawable.off); }//当tb被点击时执行该方法5.最终效果