Android开发之ToggleButton实现开关效果示例

作者:LoveJulin 时间:2022-01-12 20:22:30 

本文实例讲述了Android使用ToggleButton实现开关效果的方法。分享给大家供大家参考,具体如下:

activity_main.xml


<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:orientation="vertical" >
 <ToggleButton
   android:checked="false"
   android:textOn="开"
   android:textOff="关"
   android:id="@+id/toggleButton1"
   android:layout_width="match_parent"
   android:layout_height="wrap_content"
   />
 <ImageView
   android:id="@+id/imageView1"
   android:layout_width="match_parent"
   android:layout_height="wrap_content"
   android:background="@drawable/off"
   />
</LinearLayout>

MainActivity.java


package com.example.hello;
import android.support.v7.app.ActionBarActivity;
import android.widget.CompoundButton;
import android.widget.CompoundButton.OnCheckedChangeListener;
import android.widget.ImageView;
import android.widget.ToggleButton;
import android.os.Bundle;
public class MainActivity extends ActionBarActivity implements OnCheckedChangeListener {
 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);
   //给当前的tb设置 *
   tb.setOnCheckedChangeListener(this);
 }
 @Override
 public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
   /*
    * 当tb被点击的时候,执行当前方法
    * buttonView 代表被点击的控件本身
    * isChecked 代表被点击的控件的状态
    *
    * 当点击tb的时候,更换img的背景
    */
   img.setBackgroundResource(isChecked?R.drawable.on:R.drawable.off);
 }
}

希望本文所述对大家Android程序设计有所帮助。

标签:Android,ToggleButton
0
投稿

猜你喜欢

  • C#实现计算器功能(winform版)

    2021-07-16 06:40:15
  • C语言实现俄罗斯方块源代码

    2023-02-28 13:16:45
  • 解析Java继承中方法的覆盖和重载

    2021-09-02 02:02:32
  • Tablayout简单使用方法总结

    2022-01-08 16:27:37
  • IntelliJ IDEA像Eclipse一样打开多个项目的图文教程

    2022-03-14 05:31:40
  • Java计算文本MD5加密值的方法示例

    2023-11-15 13:18:48
  • Spring Bean后处理器详细介绍

    2021-06-27 07:29:06
  • WPF中使用CallerMemberName简化InotifyPropertyChanged的实现

    2023-05-08 16:27:07
  • C#创建Excel多级分组的方法

    2022-03-21 15:20:34
  • C#编程获取IP地址的方法示例

    2023-06-16 21:18:20
  • Java实现图像分割功能

    2022-04-10 22:27:15
  • Android 高德地图之poi搜索功能的实现代码

    2022-03-07 01:36:52
  • 解答“60k”大佬的19道C#面试题(下)

    2022-10-07 22:31:10
  • C#实现PDF文件添加图片背景

    2022-04-03 20:45:35
  • java 自动生成略缩图示例代码

    2021-11-11 01:27:37
  • Java自动添加重写的toString方法详解

    2021-11-05 14:29:13
  • C#构造函数详解

    2023-02-25 22:38:50
  • SpringBoot中使用Servlet三大组件的方法(Servlet、Filter、Listener)

    2021-07-19 18:41:43
  • SpringBoot配置 Druid 三种方式(包括纯配置文件配置)

    2021-06-03 01:41:19
  • C#获取Word文档中所有表格的实现代码分享

    2023-05-12 10:01:46
  • asp之家 软件编程 m.aspxhome.com