美文网首页
【三】Android常用控件实践

【三】Android常用控件实践

作者: 晴天ccc | 来源:发表于2020-04-21 10:40 被阅读0次

    【一】常用控件

    1、文本类控件

    • TextView:负责展示文本,非编辑。
    • EditView:可编辑文本控件。

    2、按钮类控件

    • Button:按钮
    • ImageButton:图片按钮
    • RadioButton和RadioGroup:单选按钮
    • CheckBox复选按钮

    3、图片控件

    • ImageView:负责图片显示。

    【二】简单应用

    控件千千万,我们就通过一个简单的登陆交互逻辑来初步了解一下把。
    我们在新建一个空白项目中,分别在acitvity_main.xmlMainActivity文件中复制一下代码,运行即可。

    acitvity_main

    <?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout 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"
        tools:ignore="MissingDefaultResource">
    
    
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="50dp"
            android:layout_marginTop="50dp"
            android:id="@+id/userName">
            <ImageButton
                android:layout_width="30dp"
                android:layout_height="30dp"
                android:layout_marginTop="10dp"
                android:background="#000000"/>
            <EditText
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:id="@+id/nameEditTest"
                android:layout_marginLeft="10dp"
                android:layout_marginTop="3dp"
                android:hint="请输入用户名"/>
    
        </LinearLayout>
    
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="50dp"
            android:layout_below="@id/userName"
            android:layout_marginTop="30dp"
            android:id="@+id/pwd">
            <ImageButton
                android:layout_width="30dp"
                android:layout_height="30dp"
                android:layout_marginTop="10dp"
                android:background="#000000"/>
            <EditText
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:id="@+id/pwdEditTest"
                android:layout_marginLeft="10dp"
                android:layout_marginTop="3dp"
                android:hint="请输入密码"/>
        </LinearLayout>
    
        <RadioGroup
            android:layout_width="match_parent"
            android:layout_height="50dp"
            android:layout_marginTop="20dp"
            android:orientation="horizontal"
            android:id="@+id/rg"
            android:layout_below="@id/pwd">
    
            <RadioButton
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/man"
                android:layout_marginLeft="40dp"
                android:layout_marginTop="10dp"
                android:layout_weight="1"
                android:checked="true"
                android:text="男"/>
    
            <RadioButton
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/woman"
                android:layout_marginLeft="40dp"
                android:layout_marginTop="10dp"
                android:layout_weight="1"
                android:text="女"/>
        </RadioGroup>
    
        <Button
            android:layout_width="match_parent"
            android:layout_height="50dp"
            android:layout_marginTop="30dp"
            android:layout_below="@id/rg"
            android:id="@+id/loginBtn"
            android:text="登录"
            android:background="#FF0000"
            android:textSize="19sp"
            android:textColor="#ffffff"
            />
    
    </RelativeLayout>
    
    

    MainActivity

    
    public class MainActivity extends AppCompatActivity {
        private EditText userName;
        private EditText passWord;
        private RadioGroup radioGroup;
        private Button loginBtn;
        private String sex = "男";
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
    
            //获取输入源
            userName = (EditText)findViewById(R.id.nameEditTest);
            passWord = (EditText)findViewById(R.id.pwdEditTest);
    
            //radioGroup点击事件
            radioGroup = (RadioGroup)findViewById(R.id.rg);
            radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
                @Override
                public void onCheckedChanged(RadioGroup group, int checkedId) {
                    sex = ((RadioButton)findViewById(checkedId)).getText().toString();
                }
            });
    
            //登录点击事件
            loginBtn = (Button)findViewById(R.id.loginBtn);
            loginBtn.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    String userNameStr = userName.getText().toString();
                    String passWordStr = passWord.getText().toString();
                    if (userNameStr.isEmpty()){
                        Dialog alert = new AlertDialog.Builder(MainActivity.this).setTitle("提示").setMessage("用户名不可为空").create();
                        alert.show();
                        return;
                    }
                    if (passWordStr.isEmpty()){
                        Dialog alert = new AlertDialog.Builder(MainActivity.this).setTitle("提示").setMessage("密码不可为空").create();
                        alert.show();
                        return;
                    }
                    if (sex.equals("男")){
                        Toast.makeText(MainActivity.this, "失败!", Toast.LENGTH_SHORT).show();
                    }else {
                        Toast.makeText(MainActivity.this, "成功!", Toast.LENGTH_SHORT).show();
                    }
                }
            });
        }
    }
    

    相关文章

      网友评论

          本文标题:【三】Android常用控件实践

          本文链接:https://www.haomeiwen.com/subject/rioyihtx.html