大家好,我是皮皮猫吖。
每文一言: 让你难过的,不是未来,而是未来的一切无法确定;让你安心的,也不是未来,而是未来的一切尚可争取。
本篇文章:
本篇文章主要学习Android的EditText控件。
正文如下:
EditText控件实现:
通过学习EditText控件,实现下面的效果。
1)常用属性:
.xml文件中的代码:
<!--
hint:最开始显示在文本框中的内容
inputType=“number”:输入的内容只能是数字
maxLine=“1”:输入的内容占1行
drawableLeft=“”:在文本的左边添加一个图片
drawablePadding=“”:设置文字和图片的距离 -->
<EditText
android:id="@+id/et_1"
android:layout_width="match_parent"
android:layout_height="50dp"
android:textSize="20sp"
android:textColor="#000000"
android:hint="用户名"
android:inputType="number"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:background="@drawable/bg_username"
android:drawableLeft="@drawable/name"
android:drawablePadding="2dp"
android:maxLines="1" />
drawable文件夹下一个bg_username.xml文件(用于框的样式代码),一个照片name.png
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<!-- 框的宽度、颜色-->
<stroke android:width="1dp" android:color="#808080" />
<!-- 框的四角的弧度:5dp -->
<corners android:radius="5dp" />
</shape>
效果实现:
2)登录界面(含监听事件)
.xml文件代码:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="50dp"
tools:context=".EditTextActivity" >
<!--
hint:最开始显示在文本框中的内容
inputType=“number”:输入的内容只能是数字
maxLine=“1”:输入的内容占1行
drawableLeft=“”:在文本的左边添加一个图片
drawablePadding=“”:设置文字和图片的距离 -->
<EditText
android:id="@+id/et_1"
android:layout_width="match_parent"
android:layout_height="50dp"
android:textSize="20sp"
android:textColor="#000000"
android:hint="用户名"
android:inputType="number"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:background="@drawable/bg_username"
android:drawableLeft="@drawable/name"
android:drawablePadding="2dp"
android:maxLines="1" />
<EditText
android:id="@+id/et_2"
android:layout_width="match_parent"
android:layout_height="50dp"
android:textSize="20sp"
android:textColor="#000000"
android:inputType="textPassword"
android:hint="密码"
android:layout_below="@id/et_1"
android:layout_marginTop="30dp"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:background="@drawable/bg_username"
android:maxLines="1"
android:drawableLeft="@drawable/password"
android:drawablePadding="2dp" />
<Button
android:id="@+id/btn_login"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="登录"
android:textSize="20sp"
android:layout_marginTop="40dp"
android:layout_below="@id/et_2"
android:background="@drawable/bg_btn4"/>
</RelativeLayout>
.java文件中的代码:
package com.example.helloworld;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.text.Editable;
import android.text.TextWatcher;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class EditTextActivity extends AppCompatActivity {
private Button mBtnLogin;
private EditText mEtUserName;
@Override
protected void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_edit_text);
mBtnLogin = findViewById(R.id.btn_login);
mBtnLogin.setOnClickListener(new View.OnClickListener() {
//点击事件,点击按钮时,会弹出登录成功。
@Override
public void onClick(View view) {
Toast.makeText(EditTextActivity.this, "登录成功!",Toast.LENGTH_SHORT).show();
}
});
//监听事件:当在用户名输入框中输入的时候,在Android Studio的日志中会记录你的输入
mEtUserName = findViewById(R.id.et_1);
mEtUserName.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2{
}
@Override
public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {
Log.d("edittext", charSequence.toString());
}
@Override
public void afterTextChanged(Editable editable) {
}
});
}
}
效果实现:
监听效果:
登录效果:
所用素材:
完结,撒花…
本次主要学习的是EditText控件,更多Android学习,持续更新中…
作者:皮皮猫吖