Android学习笔记(6)——Android——LoginDemo
16lz
2021-01-24
在这个demo中,将涉及到Activity(活动)的交互——从一个屏幕到另一个屏幕,通过Intent来实现的……
工程目录结构:
LoginDemoActivity程序清单
Logindemoactivity 代码- package com.oristand;
- import android.app.Activity;
- import android.content.Intent;
- import android.os.Bundle;
- import android.view.View;
- import android.widget.Button;
- public class LoginDemoActivity extends Activity {
- // 点击go按钮,进入登录活动(LoginActivity)
- private Button btn_go;
- // 按钮添加监听事件
- private BtnListener btnListener = new BtnListener();
- /** Called when the activity is first created. */
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- // 丛当前试图中找到按钮,初始化
- btn_go = (Button) findViewById(R.id.btn_go);
- // 绑定点击事件
- btn_go.setOnClickListener(btnListener);
- }
- // 监听事件
- private class BtnListener implements View.OnClickListener {
- @Override
- public void onClick(View v) {
- // TODO Auto-generated method stub
- if (v.getId() == R.id.btn_go) {
- login();
- }
- }
- }
- // 通过Intent实现跳转
- public void login() {
- Intent intent_login = new Intent();
- intent_login.setClass(this, LoginActivity.class);
- startActivity(intent_login);
- }
- }
package com.oristand;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.view.View;import android.widget.Button;public class LoginDemoActivity extends Activity {// 点击go按钮,进入登录活动(LoginActivity)private Button btn_go;// 按钮添加监听事件private BtnListener btnListener = new BtnListener();/** Called when the activity is first created. */@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);// 丛当前试图中找到按钮,初始化btn_go = (Button) findViewById(R.id.btn_go);// 绑定点击事件btn_go.setOnClickListener(btnListener);}// 监听事件private class BtnListener implements View.OnClickListener {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubif (v.getId() == R.id.btn_go) {login();}}} // 通过Intent实现跳转public void login() {Intent intent_login = new Intent();intent_login.setClass(this, LoginActivity.class);startActivity(intent_login);}}
LoginActivity.java程序清单
Loginactivity.java代码- package com.oristand;
- import android.app.Activity;
- import android.os.Bundle;
- import android.view.View;
- import android.widget.Button;
- import android.widget.EditText;
- public class LoginActivity extends Activity {
- // 用户名输入框
- private EditText et_username;
- // 密码输入框
- private EditText et_passwd;
- // 登录按钮
- private Button btn_login;
- // 取消按钮
- Button btn_reset;
- // 按钮添加点击事件
- BtnListener btnListener = new BtnListener();
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- // TODO Auto-generated method stub
- super.onCreate(savedInstanceState);
- // 设置当前视图
- setContentView(R.layout.login);
- // 从当前事件中找到输入框,初始化
- et_username = (EditText) findViewById(R.id.et_username);
- et_passwd = (EditText) findViewById(R.id.et_passwd);
- // 从当前事件中找到登录按钮,初始化
- btn_login = (Button) findViewById(R.id.btn_login);
- btn_login.setOnClickListener(btnListener);
- // ...
- btn_reset = (Button) findViewById(R.id.btn_reset);
- btn_reset.setOnClickListener(btnListener);
- }
- // 点击事件
- private class BtnListener implements View.OnClickListener {
- @Override
- public void onClick(View v) {
- // TODO Auto-generated method stub
- if (v.getId() == R.id.btn_login) {
- // do login...
- } else if (v.getId() == R.id.btn_reset) {
- finish();
- }
- }
- }
- }
package com.oristand;import android.app.Activity;import android.os.Bundle;import android.view.View;import android.widget.Button;import android.widget.EditText;public class LoginActivity extends Activity {// 用户名输入框private EditText et_username;// 密码输入框private EditText et_passwd;// 登录按钮private Button btn_login;// 取消按钮Button btn_reset;// 按钮添加点击事件BtnListener btnListener = new BtnListener();@Overrideprotected void onCreate(Bundle savedInstanceState) {// TODO Auto-generated method stubsuper.onCreate(savedInstanceState);// 设置当前视图setContentView(R.layout.login);// 从当前事件中找到输入框,初始化et_username = (EditText) findViewById(R.id.et_username);et_passwd = (EditText) findViewById(R.id.et_passwd);// 从当前事件中找到登录按钮,初始化btn_login = (Button) findViewById(R.id.btn_login);btn_login.setOnClickListener(btnListener);// ...btn_reset = (Button) findViewById(R.id.btn_reset);btn_reset.setOnClickListener(btnListener);}// 点击事件private class BtnListener implements View.OnClickListener {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubif (v.getId() == R.id.btn_login) {// do login...} else if (v.getId() == R.id.btn_reset) {finish();}}}}
R.java程序清单
R.java代码- package com.oristand;
- public final class R {
- public static final class attr {
- }
- public static final class drawable {
- public static final int icon=0x7f020000 ;
- }
- public static final class id {
- public static final int btn_go=0x7f050004 ;
- public static final int btn_login=0x7f050002 ;
- public static final int btn_reset=0x7f050003 ;
- public static final int et_passwd=0x7f050001 ;
- public static final int et_username=0x7f050000 ;
- }
- public static final class layout {
- public static final int login=0x7f030000 ;
- public static final int main=0x7f030001 ;
- }
- public static final class string {
- public static final int app_login=0x7f040002 ;
- public static final int app_name=0x7f040000 ;
- public static final int txt_btn_go=0x7f040001 ;
- public static final int txt_btn_login=0x7f040005 ;
- public static final int txt_btn_reset=0x7f040006 ;
- public static final int txt_passwd=0x7f040004 ;
- public static final int txt_username=0x7f040003 ;
- }
- }
package com.oristand;public final class R { public static final class attr { } public static final class drawable { public static final int icon=0x7f020000; } public static final class id { public static final int btn_go=0x7f050004; public static final int btn_login=0x7f050002; public static final int btn_reset=0x7f050003; public static final int et_passwd=0x7f050001; public static final int et_username=0x7f050000; } public static final class layout { public static final int login=0x7f030000; public static final int main=0x7f030001; } public static final class string { public static final int app_login=0x7f040002; public static final int app_name=0x7f040000; public static final int txt_btn_go=0x7f040001; public static final int txt_btn_login=0x7f040005; public static final int txt_btn_reset=0x7f040006; public static final int txt_passwd=0x7f040004; public static final int txt_username=0x7f040003; }}
main.xml程序清单
Main.xml代码- <?xml version= "1.0" encoding= "utf-8" ?>
-
"http://schemas.android.com/apk/res/android" - android:orientation="vertical" android:layout_width= "fill_parent"
- android:layout_height="fill_parent" android:gravity= "center_vertical|center_horizontal" >
- android:layout_width= "wrap_content"
- android:layout_height="wrap_content" android:text= "@string/txt_btn_go" />
<?xml version="1.0" encoding="utf-8"?>
login.xml程序清单
Login.xml代码- <?xml version= "1.0" encoding= "utf-8" ?>
-
"http://schemas.android.com/apk/res/android" - android:orientation="vertical" android:layout_width= "fill_parent"
- android:layout_height="fill_parent" >
-
"horizontal" - android:layout_width="fill_parent" android:layout_height= "wrap_content" >
-
"fill_parent" - android:layout_height="wrap_content" android:text= "@string/txt_username" />
-
"@+id/et_username" android:maxLength= "8" - android:maxLines="1" android:layout_weight= "1.0"
- android:layout_width="fill_parent" android:layout_height= "wrap_content"
- android:text="" />
-
"horizontal" - android:layout_width="fill_parent" android:layout_height= "wrap_content" >
-
"fill_parent" - android:layout_height="wrap_content" android:text= "@string/txt_passwd" />
-
"@+id/et_passwd" android:password= "true" - android:maxLength="10" android:maxLines= "1" android:layout_weight= "1.0"
- android:layout_width="fill_parent" android:layout_height= "wrap_content"
- android:text="" />
-
"horizontal" - android:layout_width="fill_parent" android:layout_height= "wrap_content" >
- android:layout_width= "fill_parent"
- android:layout_height="wrap_content" android:layout_weight= "1.0"
- android:text="@string/txt_btn_login" />
- android:layout_width= "fill_parent"
- android:layout_height="wrap_content" android:layout_weight= "1.0"
- android:text="@string/txt_btn_reset" />
<?xml version="1.0" encoding="utf-8"?>
string.xml程序清单
String.xml代码- <?xml version= "1.0" encoding= "utf-8" ?>
-
-
"app_name" >LoginDemo -
"txt_btn_go" >Go... -
"app_login" >登录 -
"txt_username" >用户名: -
"txt_passwd" >密 码: -
"txt_btn_login" >登 录 -
"txt_btn_reset" >取 消
<?xml version="1.0" encoding="utf-8"?>LoginDemo Go... 登录 用户名: 密 码: 登 录 取 消
AndroidManifest.xml程序清单
Androidmanifest.xml代码- <?xml version= "1.0" encoding= "utf-8" ?>
-
"http://schemas.android.com/apk/res/android" - package="com.oristand" android:versionCode= "1" android:versionName= "1.0.0" >
- "@drawable/icon" android:label= "@string/app_name" >
- ".LoginDemoActivity" android:label= "@string/app_name" >
-
- "android.intent.action.MAIN" />
-
"android.intent.category.LAUNCHER" /> - ".LoginActivity" android:label= "@string/app_login" >
<?xml version="1.0" encoding="utf-8"?>
程序运行配置:
default就可以……
AndroidManifest.xml中的配置可以知道答案……就相当与函数的入口是main方法一样
...
...
运行效果:
更多相关文章
- Android中浮动按钮
- android gridview 组件 及九宫格的简单编写
- Android按钮实现点击事件的四种方式
- android GPS HAL 回调函数实现
- android TV开发:弹出菜单实现
- android SDK开发 -- TitleBar封装(二)
- android实现音乐播放器(进度条)
- Android中解决EditText与NestedScrollView垂直滑动冲突
- Android中自定义属性(attrs.xml,TypedArray)的使用【转】