温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

怎么在Android中实现一个开关按钮

发布时间:2021-04-14 17:41:06 来源:亿速云 阅读:251 作者:Leah 栏目:移动开发

这篇文章将为大家详细讲解有关怎么在Android中实现一个开关按钮,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

布局文件:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:id="@+id/root"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:orientation="vertical">
  <!--定义一个ToggleButton按钮-->
  <ToggleButton
    android:id="@+id/toggle"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textOff="横向排列"
    android:textOn="纵向排列"
    android:checked="true"/>
  <Switch
    android:id="@+id/switcher"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textOff="横向排列"
    android:textOn="纵向排列"
    android:thumb="@drawable/thumb"
    android:checked="true"/>
  <!--定义一个可以动态改变方向的线性布局-->
  <LinearLayout
    android:id="@+id/text"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">
    <Button
      android:id="@+id/button01"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content" />
    <Button
      android:id="@+id/button02"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content" />
    <Button
      android:id="@+id/button03"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content" />
  </LinearLayout>
</LinearLayout>

活动代码实现:

public class Home extends AppCompatActivity {
  ToggleButton toggle ;
  Switch switcher ;
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);//显示manLayout
    toggle = (ToggleButton) findViewById(R.id.toggle);
    switcher = (Switch) findViewById(R.id.switcher);
    final LinearLayout text = (LinearLayout) findViewById(R.id.text);
    CompoundButton.OnCheckedChangeListener onCheckedChangeListener =
        new CompoundButton.OnCheckedChangeListener() {
      @Override
      public void onCheckedChanged(
          CompoundButton buttonView, boolean isChecked) {
        if (isChecked) {
          //设置LinearLayout垂直布局
          text.setOrientation(LinearLayout.VERTICAL);
          toggle.setChecked(true);
          switcher.setChecked(true);
        }else {
          //设置水平布局
          text.setOrientation(LinearLayout.HORIZONTAL);
          toggle.setChecked(false);
          switcher.setChecked(false);
        }
      }
    };
    toggle.setOnCheckedChangeListener(onCheckedChangeListener);
    switcher.setOnCheckedChangeListener(onCheckedChangeListener);
  }
}

关于怎么在Android中实现一个开关按钮就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI