安卓APP_ 控件(3)—— EditText
 
                
摘自:安卓APP_ 控件(3)—— EditText
作者:丶PURSUING
发布时间: 2021-03-29 18:43:40
网址:https://blog.csdn.net/weixin_44742824/article/details/115305883
开篇:安卓APP_ 控件(1)—— TestView
EditText
- EditText设置提示用户输入界面
- EditText+Button获取用户输入的信息
EditText设置提示用户输入界面
显示效果:

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">
<!--    background:      设置背景色,可以覆盖框中原有的横线
        drawableLeft:   指定的图片放在输入提示的左侧,图片的大小可在其xml调整    
        drawablePadding:图片与输入提示的间距
        inputType:      例如phone只能输入电话号码
        paddingBottom:  图片和文字距离框底部的距离     -->
    <EditText
        android:layout_width="match_parent"
        android:layout_height="200dp"
        android:background="@color/white"
        android:drawableLeft="@drawable/ic_baseline_person_24"
        android:drawablePadding="10dp"
        android:hint="请输入用户名"
        android:inputType="phone"
        android:paddingBottom="50dp"
        android:textColor="#95a1aa"
        android:textSize="40sp" />
</LinearLayout>
EditText+Button获取用户输入的信息

 (1)在Main.xml的基础上新建Button控件
<!--    layout_marginLeft: 控件距离容器左边距离
        backgroundTint:    按钮的背景色
        wrap_content        按钮大小适应文本       -->
<Button
    android:id="@+id/btn_login"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginLeft="40sp"
    android:backgroundTint="@color/teal_200"
    android:text="获取用户名" />
 
 - 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
想要在
Main.java中操作控件,就要给控件Button一个id,EditText也是如此。
(2)在Main.java中设置按键按下,程序读取输入的信息
package com.example.edittext;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class MainActivity extends AppCompatActivity {
    private EditText et;//这里成不能放在main中,要设置全局,否则子方法不认识
    
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        //创建btn对象对控件进行实际的操作
        Button btn_login = findViewById(R.id.btn_login);
        et = findViewById(R.id.et);
        
        //类似于监听(等待)按钮点击
        btn_login.setOnClickListener(new View.OnClickListener() {//传入形参:对象
            @Override
            public void onClick(View v) { //当点击按钮时,重写一个子方法。
                String phoneNum = et.getText().toString();//把对象et的文本转换为字符串  
                Log.e("zhua", "phoneNum: "+phoneNum);//打印输入的内容
            }
        });
    }
}
快捷操作:做函数的返回值接收变量

