1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > Android开发基础之控件EditText

Android开发基础之控件EditText

时间:2021-01-27 18:20:11

相关推荐

Android开发基础之控件EditText

目录

一、基础属性二、在提示文本旁添加图片三、获取EditText内容四、监听事件五、制作登录界面

一、基础属性

1、id

// activity_main.xmlandroid:id="@+id/edit_text1" // 给当前控件取个id叫edit_text1

// MainActivity.javaEditText edit_text1=findViewById(R.id.edit_text1); // 按id获取控件edit_text1.setText("hh"); // 对这个控件设置显示内容

如果在.java和.xml文件中对同一属性进行了不同设置,比如.java中设置控件内容hh,.xml中设置内容为aa,最后显示的是.java中的内容hh。

2、layout_width

3、layout_height

组件宽度和高度有4个可选值,如下图:

5、hint

可以直接在activity_main.xml中写android:hint="请输入密码",也可以在strings.xml中定义好字符串,再在activity_main.xml中使用这个字符串。

// strings.xml<string name="str1">请输入密码</string>

// activity_main.xmlandroid:hint="@string/str1"

5、textColorHint

与text类似,可以直接在activity_main.xml中写android:textColorHint="#FF0000FF",也可以在colors.xml中定义好颜色,再在activity_main.xml中使用这个颜色。

8、gravity

左对齐方向有上下左右等。

二、在提示文本旁添加图片

10、drawableXXX

drawableLeft,图片在左侧drawableRight,图片在右侧drawableTop,图片在上方drawableBottom,图片在下方

12、paddingXXX,内边距

padding,该控件与内部的内容间的距离paddingTop,该控件与内部的内容间的上方的距离paddingBottom,该控件与内部的内容间的下方的距离paddingRight,该控件与内部的内容间的左侧的距离paddingLeft,该控件与内部的内容间的右侧的距离

例子:

导入图片,在资源res里导入要显示的图片

可以使用软件自带的图片:

也可以导入自己计算机内的图片:

程序示例

<EditTextandroid:id="@+id/edit_text1"android:layout_width="350sp"android:layout_height="100sp"android:background="@color/yellow_50"android:hint="请输入密码"android:textColorHint="@color/dark_blue_500"android:textSize="40sp"android:gravity="center"android:inputType="numberPassword"android:drawableLeft="@drawable/ic_password_blue"android:drawablePadding="1sp"android:paddingLeft="20sp"></EditText>

效果:

三、获取EditText内容

在MainActivity.java内获取EditText内容,调用id.getText()

// 获取ideditText_userName=findViewById(R.id.editText_userName);editText_password=findViewById(R.id.editText_password);// 获取用户名和密码框内的内容String str1=editText_userName.getText().toString();String str2=editText_password.getText().toString();

四、监听事件

MainActivity.java

// 获取idet1=findViewById(R.id.editText_userName);et2=findViewById(R.id.editText_password);// 监听输入内容变化et1.addTextChangedListener(new TextWatcher() {// 内容改变之前@Overridepublic void beforeTextChanged(CharSequence s, int start, int count, int after) {// 在这里写要执行的操作}// 内容改变当中,常用// CharSequence s是当前在编辑框内输入的内容@Overridepublic void onTextChanged(CharSequence s, int start, int before, int count) {// 在这里写要执行的操作}// 内容改变之后@Overridepublic void afterTextChanged(Editable s) {// 在这里写要执行的操作}});

五、制作登录界面

程序示例:

activity_main.xml

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="/apk/res/android"android:layout_height="match_parent"android:layout_width="match_parent"android:orientation="vertical"android:paddingTop="100dp"android:paddingRight="20dp"android:paddingLeft="20dp"><LinearLayoutandroid:layout_width="match_parent"android:layout_height="250dp"android:orientation="vertical"><EditTextandroid:id="@+id/editText_userName"android:layout_width="match_parent"android:layout_height="0dp"android:layout_weight="1"android:hint="请输入用户名"android:textColorHint="@color/dark_blue_500"android:textSize="40dp"android:gravity="center"android:inputType="number"android:drawableLeft="@drawable/ic_user_name_blue"android:drawablePadding="1dp"android:paddingLeft="20dp"></EditText><EditTextandroid:id="@+id/editText_password"android:layout_width="match_parent"android:layout_height="0dp"android:layout_weight="1"android:hint="请输入密码"android:textColorHint="@color/dark_blue_500"android:textSize="40dp"android:gravity="center"android:inputType="numberPassword"android:drawableLeft="@drawable/ic_password_blue"android:drawablePadding="1dp"android:paddingLeft="20dp"></EditText></LinearLayout><Buttonandroid:id="@+id/btn_load"android:layout_width="match_parent"android:layout_height="100dp"android:text="登录"android:textSize="40dp"android:textColor="@color/dark_blue_500"android:background="@color/blue_50"android:layout_marginTop="10dp"></Button></LinearLayout>

MainActivity.java

package com.example.myapplication;import androidx.appcompat.app.AppCompatActivity;import android.os.Bundle;import android.util.Log;import android.view.MotionEvent;import android.view.View;import android.widget.Button;import android.widget.EditText;import android.widget.TextView;public class MainActivity extends AppCompatActivity {private EditText editText_userName;private EditText editText_password;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);// 获取ideditText_userName=findViewById(R.id.editText_userName);editText_password=findViewById(R.id.editText_password);Button btn_load=findViewById(R.id.btn_load);// 监听点击事件btn_load.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {// 获取用户名和密码String str1=editText_userName.getText().toString();String str2=editText_password.getText().toString();// 输出Log.e("onClick", "用户名:"+str1);Log.e("onClick", "密码:"+str2);}});}}

效果:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。