• Android_Component_example


    xml布局:

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical"
        tools:context="com.example.homework03.MainActivity" >
    
        <!-- 第一行:姓名 -->
    
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content" >
    
            <TextView
                android:layout_width="50dp"
                android:layout_height="wrap_content"
                android:gravity="center"
                android:text="姓名"
                android:textSize="20sp" />
    
            <EditText
                android:id="@+id/edit_name"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:hint="输入姓名"
                android:textSize="20sp" />
        </LinearLayout>
        <!-- 第二行:密码 -->
    
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content" >
    
            <TextView
                android:layout_width="50dp"
                android:layout_height="wrap_content"
                android:gravity="center"
                android:text="密码"
                android:textSize="20sp" />
    
            <EditText
                android:id="@+id/edit_password"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:hint="输入密码"
                android:inputType="textPassword"
                android:textSize="20sp" />
        </LinearLayout>
        <!-- 第三行:性别 -->
    
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content" >
    
            <TextView
                android:layout_width="50dp"
                android:layout_height="wrap_content"
                android:gravity="center"
                android:text="性别"
                android:textSize="20sp" />
    
            <RadioGroup
                android:id="@+id/group_sex"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:orientation="horizontal" >
    
                <RadioButton
                    android:id="@+id/rb_man"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="男" />
    
                <RadioButton
                    android:id="@+id/rb_woman"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="女" />
            </RadioGroup>
        </LinearLayout>
        <!-- 第四行:年龄 -->
    
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content" >
    
            <TextView
                android:layout_width="50dp"
                android:layout_height="wrap_content"
                android:gravity="center"
                android:text="年龄"
                android:textSize="20sp" />
    
            <EditText
                android:id="@+id/edit_age"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:hint="输入年龄"
                android:inputType="number"
                android:textSize="20sp" />
        </LinearLayout>
        <!-- 第五行:email -->
    
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content" >
    
            <TextView
                android:layout_width="50dp"
                android:layout_height="wrap_content"
                android:gravity="center"
                android:text="Email"
                android:textSize="20sp" />
    
            <EditText
                android:id="@+id/edit_email"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:hint="输入Email"
                android:inputType="textEmailAddress"
                android:textSize="20sp" />
        </LinearLayout>
        <!-- 第六行:爱好 -->
    
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content" >
    
            <TextView
                android:layout_width="50dp"
                android:layout_height="wrap_content"
                android:gravity="center"
                android:text="爱好"
                android:textSize="20sp" />
    
            <GridLayout
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:columnCount="4"
                android:rowCount="3" >
    
                <CheckBox
                    android:id="@+id/checkbox0"
                    android:text="动漫" />
    
                <CheckBox
                    android:id="@+id/checkbox1"
                    android:text="美食" />
    
                <CheckBox
                    android:id="@+id/checkbox2"
                    android:text="约会" />
    
                <CheckBox
                    android:id="@+id/checkbox3"
                    android:text="Dota" />
    
                <CheckBox
                    android:id="@+id/checkbox4"
                    android:text="篮球" />
    
                <CheckBox
                    android:id="@+id/checkbox5"
                    android:text="野炊" />
    
                <CheckBox
                    android:id="@+id/checkbox6"
                    android:text="电影" />
    
                <CheckBox
                    android:id="@+id/checkbox7"
                    android:text="桌游" />
    
                <CheckBox
                    android:id="@+id/check_all"
                    android:text="全选" />
    
                <CheckBox
                    android:id="@+id/check_none"
                    android:text="全不选" />
            </GridLayout>
        </LinearLayout>
        <!-- 第七行:评分 -->
    
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content" >
    
            <TextView
                android:layout_width="50dp"
                android:layout_height="wrap_content"
                android:gravity="center"
                android:text="评分"
                android:textSize="20sp" />
    
            <RatingBar
                android:id="@+id/ratingbar"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:numStars="5" />
        </LinearLayout>
        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="确定"
            android:onClick="btn_click"
            />
    </LinearLayout>

    源代码:

    package com.example.homework03;
    
    import android.app.Activity;
    import android.os.Bundle;
    import android.view.Menu;
    import android.view.MenuItem;
    import android.view.View;
    import android.widget.CheckBox;
    import android.widget.CompoundButton;
    import android.widget.EditText;
    import android.widget.RadioButton;
    import android.widget.RadioGroup;
    import android.widget.RatingBar;
    import android.widget.Toast;
    
    public class MainActivity extends Activity {
        private EditText edit_name, edit_passwd, edit_age, edit_email;
        private RadioGroup group_sex;
        private CheckBox[] checks;
        private CheckBox checkAll, checkNone;
        private RatingBar ratingBar;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            // 找出对应的控件
            edit_name = (EditText) findViewById(R.id.edit_name);
            edit_passwd = (EditText) findViewById(R.id.edit_password);
            edit_age = (EditText) findViewById(R.id.edit_age);
            edit_email = (EditText) findViewById(R.id.edit_email);
            group_sex = (RadioGroup) findViewById(R.id.group_sex);
            checks = new CheckBox[8];
            checks[0] = (CheckBox) findViewById(R.id.checkbox0);
            checks[1] = (CheckBox) findViewById(R.id.checkbox1);
            checks[2] = (CheckBox) findViewById(R.id.checkbox2);
            checks[3] = (CheckBox) findViewById(R.id.checkbox3);
            checks[4] = (CheckBox) findViewById(R.id.checkbox4);
            checks[5] = (CheckBox) findViewById(R.id.checkbox5);
            checks[6] = (CheckBox) findViewById(R.id.checkbox6);
            checks[7] = (CheckBox) findViewById(R.id.checkbox7);
            checkAll = (CheckBox) findViewById(R.id.check_all);
            checkNone = (CheckBox) findViewById(R.id.check_none);
            ratingBar = (RatingBar) findViewById(R.id.ratingbar);
            ratingBar.setMax(5);
            // 给checkbox添加onCheck事件
            checkAll.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
    
                @Override
                public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
                    if(isChecked) { // 当勾上了全选时,才选择全部的CheckBox
                        for(CheckBox check : checks) {
                            check.setChecked(true);
                        }
                        checkNone.setChecked(false);
                    }
                }
            });
            checkNone.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
    
                @Override
                public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
                    if(isChecked) { // 当勾上了全不选时,才取消选择全部的CheckBox
                        for(CheckBox check : checks) {
                            check.setChecked(false);
                        }
                        checkAll.setChecked(false);
                    }
                }
            });
        }
    
        public void btn_click(View view) {
            String result = "";
            String name = edit_name.getText().toString();
            result += "姓名:" + name +"
    ";
            String passwd = edit_passwd.getText().toString();
            result += "密码:" + passwd +"
    ";
            int id = group_sex.getCheckedRadioButtonId();
            RadioButton rb = (RadioButton) findViewById(id);
            String sex = rb.getText().toString();
            result += "性别:" + sex + "
    ";
            int age = Integer.parseInt(edit_age.getText().toString());
            result += "年龄:" + age +"
    ";
            String email = edit_email.getText().toString();
            result += "Email:" + email +"
    ";
            
            String favor = "";
            for(CheckBox check : checks) {
                if(check.isChecked()) {
                    favor += check.getText().toString() + " ";
                }
            }
            result += "爱好:" + favor +"
    ";
            
            int rating = ratingBar.getProgress();
            result += "评分:" + rating +"
    ";
            
            Toast.makeText(MainActivity.this, result, Toast.LENGTH_LONG).show();
        }
    }
  • 相关阅读:
    【原】文本图片自适应高度小bug以及解决办法
    【原】iOS学习39网络之数据请求
    【原】iOS学习38网络之数据解析
    iOS数据持久化文件读写之偏好设置
    SQLite错误码
    iOS开发代码规范(通用)
    iOS学习37数据处理之CoreData
    iOS中的单例
    iOS学习36数据处理之SQLite数据库
    UIImage两种初始化的区别
  • 原文地址:https://www.cnblogs.com/fangg/p/5562844.html
Copyright © 2020-2023  润新知