Android开发之简单登录界面
2023-06-13 09:13:36 时间
用户界面基础
- Android系统的四大组件分别是活动(Activity)、服务(Service)、广播接收器(Broadcast Receiver)、内容提供器(Content Provider)。 其中,活动算是一个程序的门面,活动通过onCreate()方法来对用户界面(UI)进行初始化。而用户界面的创建则分为静态和动态两种方式:
- 静态方式即以XML布局文件来定义用户界面,通过XML布局文件中的相关属性进行控制,我将使用这种方式来实现简单的登录界面。
- 动态方式是指通过Java代码来开发用户界面,动态地控制界面中的组件。我没有尝试过这种开发方式。
- Android项目工程的结构:
- 补充:
- 其中java文件夹下存储有主活动文件MainActivty.java。
- layout文件夹下存储有布局文件activity_main.xml。
简单登录界面的实现
- 准备完成的功能:
- 界面包含两个编辑框,一个用于输入用户名;一个用于输入密码。
- 点击登录按钮,若用户名和密码均和点击登录按钮方法中定义的相同,则显示登录成功的提示框,若不同,则提示登录失败。
- 按照要求,实现两个输入框,这里我们就需要在XML文件中进行布局,使用EditText控件进行设置。 XML布局代码如下:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_height="match_parent"
android:layout_width="match_parent">
<TextView
android:id="@+id/edit_text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="用户登录界面"
android:textAlignment="center"
android:textSize="24sp" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="用户名"
android:textAlignment="center"
android:textSize="24sp" />
<EditText
android:id="@+id/username"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="请输入您的用户名"/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="密码"
android:textAlignment="center"
android:textSize="24sp" />
<EditText
android:id="@+id/password"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="请输入您的密码"/>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_height="match_parent"
android:layout_width="match_parent">
<Button
android:id="@+id/login"
android:layout_height="60dp"
android:layout_width="wrap_content"
android:text="登录"
android:layout_gravity="center"
android:textAlignment="center"
android:textSize="18sp" />
</LinearLayout>
</LinearLayout>
- 补充:
- LinearLayout代表当前布局方式为线性布局。
- TextView为显示字符串的控件,例如界面上的“用户登录界面”、“用户名”、“密码”就是用TextView实现的。
- Button为按钮控件,即为用户界面添加一个可供点击的按钮,并可在主活动中添加相应的方法实现点击按钮后要进行的操作。
- 接下来我们开始编写活动页面的代码,完成点击按钮后的匹配用户名和密码的操作。
- 为获取到的Button对象绑定一个监听器button.setOnClickListener()。
- 使用接口方式实现监听事件。
- 最后在onClick()方法中实现监听事件要实现的逻辑即可。 代码如下:
public class MainActivity extends AppCompatActivity implements View.OnClickListener{
Button button;
EditText username;
EditText password;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button = (Button)findViewById(R.id.login);
username = (EditText)findViewById(R.id.username);
password = (EditText)findViewById(R.id.password);
button.setOnClickListener(this);
}
@Override
public void onClick(View v) {
String username1 = username.getText().toString();
String password1 = password.getText().toString();
String ok = "登录成功";
String fail = "登录失败";
if (username1.equals("taoli") && password1.equals("123456")) {
Toast.makeText(MainActivity.this,ok,Toast.LENGTH_SHORT).show();
}else {
Toast.makeText(MainActivity.this,fail,Toast.LENGTH_SHORT).show();
}
}
}
- 登陆成功效果如下:
- 登录失败效果如下:
相关文章
- android错误_android:layout_margin
- 代码加密 android,Android 开发怎样做代码加密或混淆「建议收藏」
- android.widget.RelativeLayout$LayoutParams cannot be cast to android.widget.FrameLayout$LayoutParams
- Android直播开发之旅(10):AndroidUSBCamera,UVCCamera开发通用库(支持开启多路摄像头)[通俗易懂]
- eclipse中android开发_Android开发教程
- android 系统浏览器 源码-Android 最最最简单的浏览器代码
- android多级树形列表
- 【Android 应用开发】Android屏幕适配解析 - 详解像素,设备独立像素,归一化密度,精确密度及各种资源对应的尺寸密度分辨率适配问题
- 【Android 应用开发】 FastJson 使用详解
- 【Android 应用开发】使用蒲公英 SDK 收集崩溃日志信息 ( 导入依赖 | 申请 Key | 集成代码 | 清单文件配置 | 手动上传日志 | 手动检查更新 )
- 利用Socket与服务器端交互的简单Android范例代码详解手机开发
- Android获取当前手机设备信息工具类详解手机开发
- Android剪裁图片简单的方法详解手机开发
- [android] 界面切换的简单动画详解手机开发
- [android] 看博客学习Android常见的几种RuntimeException详解手机开发
- Universal-Image-Loader,android-Volley,Picasso、Fresco和Glide图片缓存库的联系与区别详解手机开发
- android 开发Handler源码剖析详解手机开发
- Android 插件化之Hook机制详解手机开发
- Android Studio 导入项目 出现安装Error:Cause: failed to find target with hash string ‘android-23’ 等错误详解手机开发
- Android中的ProgressBar的android:indeterminate详解手机开发
- Android Studio离线安装Android Size Analyzer(非build下analyze apk)详解手机开发
- Github iOS 和 Android 客户端正式发布
- 使用Android实现连接MySQL数据库:实现快速数据交互与管理(android连接mysql数据库)
- Android文本框搜索和清空效果实现代码及简要概述
- android开发教程之handler异步更新ui
- android通过jxl读excel存入sqlite3数据库
- android开发教程之实现toast工具类