zoukankan      html  css  js  c++  java
  • Android深入浅出系列之实例应用—同意协议CheckBox的使用

      我们在注册为某一个网站会员时,以前貌似都要同意一些协议才能注册成功,在手机应用里也是一样的,我们同样需要签署一些协议才能进行下一步动作。
      下面这个应用是当我们勾选“我同意”后,文字内容会变,同时”确定“按钮可以点击,否则”确定“按钮是不能点击,也就是说不能进行下一步动作。

      实现步骤

      一:布局文件编写

      1.1:布局文件main.xml

      <?xml version="1.0" encoding="utf-8"?>
      <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
          android:orientation="vertical"
          android:layout_width="fill_parent"
          android:layout_height="fill_parent"
          >
      <TextView  
           android:layout_width="fill_parent" 
           android:layout_height="wrap_content" 
           android:text="@string/content"
           android:id="@+id/tv"
         />
        <CheckBox 
             android:layout_width="wrap_content"  
             android:layout_height="wrap_content"
             android:text="我同意"
             android:id="@+id/checkbox"
        /> 
       <Button
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:text="确定"
         android:id="@+id/btn1"
        />
      </LinearLayout>

      二:代码文件编写

      2. 1:MainActivity.java

      package com.menglin.checkbox;

      import android.app.Activity;
      import android.os.Bundle;
      import android.view.View;
      import android.view.View.OnClickListener;
      import android.widget.Button;
      import android.widget.CheckBox;
      import android.widget.TextView;

      public class MianActivity extends Activity
      {
         //声明一个Button对象
         private Button mybtn = null;

         //声明一个TextView 对象
         private TextView mytv = null;

         //声明一个CheckBox 对象
         private CheckBox mycheckBox = null;
         @Override
         public void onCreate(Bundle savedInstanceState)
         {
            super.onCreate(savedInstanceState);
            //加载main.xml布局文件
            setContentView(R.layout.main);
            //以findViewById()方法取得Button对象
            mybtn = (Button)findViewById(R.id.btn1);
            //以findViewById()方法取得TextView对象
            mytv = (TextView)findViewById(R.id.tv);
            //以findViewById()方法取得CheckBox对象
            mycheckBox = (CheckBox)findViewById(R.id.checkbox);
            //给CheckBox对象绑定单击监听事件
            mycheckBox.setOnClickListener(listener);
            //将CheckBox默认设置为未选择状态
            mycheckBox.setChecked(false);
            //将Button默认设置为未启用状态
            mybtn.setEnabled(false);
        }
     
       //监听事件
       private OnClickListener listener = new OnClickListener()
       { 
          @Override
          public void onClick(View v)
          {
             //如果CheckBox选中的话
             if(mycheckBox.isChecked())
             {
                //将Button设置为启用状态
                mybtn.setEnabled(true);
                //设置TextView呈现的内容
                mytv.setText("您已完整阅读该协议并且同意");
             }
             else 
             {
                //将Button默认设置为未启用状态
                mybtn.setEnabled(false);
                //设置TextView呈现的内容
                mytv.setText(R.string.content);
             }
          }
       };
     }

     三:常量文件

      string.xml

      <?xml version="1.0" encoding="utf-8"?>
      <resources>
        <string name="content">这里是安卓开发联盟协议,如果您同意此协议请点击...</string>
        <string name="app_name">CheckBoxDemo</string>
      </resources>

      运行效果如下 

      

      

      

  • 相关阅读:
    eclipse项目迁移到android studio(图文最新版)
    栈上分配存储器的方法 alloca 抽样
    【PHP】PHP获得第一章
    阿里2015回顾面试招收学历(获得成功offer)
    Linux 于 shell 变数 $#,$@,$0,$1,$2 含义解释:
    Codeforces 451E Devu and Flowers(容斥原理)
    hdu 4964 Emmet()模拟
    “度”思考
    Windows Auzre 微软的云计算产品的后台操作界面
    Java设计模式菜鸟系列(两)建模与观察者模式的实现
  • 原文地址:https://www.cnblogs.com/menglin2010/p/2276008.html
Copyright © 2011-2022 走看看