LoginActivity.java

package com.example.ruian;

import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.SharedPreferences; import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText; public class LoginActivity extends Activity { private EditText m_txtUserName = null;
private EditText m_txtPwd = null;
private Button m_butLogin=null; @Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login); findViews();
setListensers(); } private void findViews(){
m_txtUserName=(EditText) findViewById(R.id.txtUserName);
m_txtPwd=(EditText) findViewById(R.id.txtPwd);
m_butLogin = (Button) findViewById(R.id.butLogin);
} private void setListensers(){
//Login按钮
m_butLogin.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
butLogin_OnClick(v);
}
});
} private void butLogin_OnClick(View v){
//系统参数
SharedPreferences share = getSharedPreferences("perference",MODE_PRIVATE);
//登陆密码---------------------------------------------------------------
String strLoginPwd_value=share.getString("login_pwd_value","");
//m_txtPwd.setText(strLoginPwd_value);
if(strLoginPwd_value.equals("")==true){//为空则设初始值
strLoginPwd_value=getResources().getString(R.string.loginpwd_init);//默认登陆密码
} String strLoginPwd=m_txtPwd.getText().toString();
if(strLoginPwd.equals(strLoginPwd_value)==true){
//登陆成功
//声明Intent对象,并启动 LoginActivity Activity
Intent intent = new Intent();
intent.setClass(LoginActivity.this, MainActivity.class);
startActivity(intent);
//从历史堆栈中删除当前Activity,用户点击“返回”按钮键时,不会再返回到这个Activity。
finish();
}
else{
openDialog("登陆密码错误!","消息");
}
} //弹出对话框--------------------------------------------------
private void openDialog(String strMsg, String strTitle){
new AlertDialog.Builder(this)
.setTitle(strTitle)
.setMessage(strMsg)
.setPositiveButton("确认",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
}
})
.show();
} //弹出确认、取消 对话框--------------------------------------------------
private void openDialogOk(String strMsg, String strTitle){
new AlertDialog.Builder(this)
.setTitle(strTitle)
.setMessage(strMsg)
.setPositiveButton("确认",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
openDialog("登陆密码错误!-----","消息");
}
})
.setNegativeButton("取消",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
openDialog("登陆密码错误!=====","消息");
}
})
.show();
} }

activity_login.xml

<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
> <TableRow>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:textSize="20dip"
android:layout_weight="1"
android:text="用户登陆" />
</TableRow>
<TableRow>
<TextView
android:id="@+id/lblUserName"
android:layout_weight="1"
android:text="用户名:" />
</TableRow>
<TableRow>
<EditText
android:id="@+id/txtUserName"
android:layout_weight="1"
android:inputType="textPassword">
</EditText>
</TableRow>
<TableRow>
<TextView
android:id="@+id/lblPwd"
android:layout_weight="1"
android:text="密码:" />
</TableRow>
<TableRow>
<EditText
android:id="@+id/txtPwd"
android:layout_weight="1"
android:inputType="textPassword">
</EditText>
</TableRow>
<TableRow>
<Button
android:id="@+id/butLogin"
android:layout_weight="1"
android:text="登陆" /> </TableRow> </TableLayout>

strings.xml

<?xml version="1.0" encoding="utf-8"?>
<resources> <string name="loginpwd_init">123456</string>
</resources>

最重要的一步,将此界面设置为启动页。

AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.ruian"
android:versionCode="1"
android:versionName="1.0" > <uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17" /> <application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.example.ruian.LoginActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name="ParaSetActivity"></activity>
<activity android:name="MainActivity"></activity>
</application> </manifest>

说明:

android:name="com.example.ruian.LoginActivity"  这句中的 LoginActivity 即是设置初始界面为登陆页。
<activity android:name="ParaSetActivity"></activity>  这句是设置界面的activity
<activity android:name="MainActivity"></activity> 这句是主界面的activity

android 登陆界面的更多相关文章

  1. Android登陆界面实现-支持输入框清楚和震动效果功能

    演示效果 主要代码例如以下 自己定义的一个EditText.用于实现有文字的时候显示能够清楚的button: import android.content.Context; import androi ...

  2. Ubuntu 12.04 64bit 配置完android 5.0编译环境后出现“could not write bytes: Broken pipe.”而无法进入输入帐号密码的登陆界面

    Ubuntu 12.04 64bit 配置完android 5.0编译环境后出现“could not write bytes: Broken pipe.”而无法进入输入帐号密码的登陆界面.上网问了问百 ...

  3. Android 仿QQ微信开场导航以及登陆界面

    相信大家对于微信等社交应用的UI界面已经都很熟悉了,该UI最值得借鉴的莫过于第一次使用的时候一些列产品介绍的图片,可以左右滑动浏览,最后进入应 用,这一效果适用于多种项目中,相信今后开发应用一定会用得 ...

  4. 【转】android 欢迎界面翻页成效,仿微信第一次登陆介绍翻页界面

    android 欢迎界面翻页效果,仿微信第一次登陆介绍翻页界面 本实例做的相对比较简单主要是对翻页控件的使用,有时候想要做一些功能是主要是先了解下是否有现成的控件可以使用,做起来比较简单不用费太大的劲 ...

  5. Android仿QQ微信开场导航以及登陆界面

    相信大家对于微信等社交应用的UI界面已经都很熟悉了,该UI最值得借鉴的莫过于第一次使用的时候一些列产品介绍的图片,可以左右滑动浏览,最后 进入应用,这一效果适用于多种项目中,相信今后开发应用一定会用得 ...

  6. Android UI组件----用相对布局RelativeLayout做一个登陆界面

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/3 ...

  7. alertDialog创建登陆界面,判断用户输入

    alertDialog创建登陆界面,需要获取用户输入的用户名和密码,获取控件对象的时候不能像主布局文件那样获得, 需要在onClickListener中获取,代码如下: public boolean ...

  8. android登陆接口调试

    最近项目要开始调API,于是自己写了个关于登陆界面调试的Demo,为了保护项目,接口文档里面的内容都是被我改过的,不涉及任何项目内容.当然,代码在运行成功后,上传至博客前,相应内容我也根据改过后的文档 ...

  9. QML与C++交互:登陆界面设计

    QML与C++交互:登陆界面设计 本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明. 环境: 主机:WIN7 开发环境:Qt5.2.1 说明: QML设计前 ...

随机推荐

  1. Longest Consecutive Sequence leetcode java

    题目: Given an unsorted array of integers, find the length of the longest consecutive elements sequenc ...

  2. scala 学习笔记六 推导

    1.介绍 在Scala中,推导将生成器.过滤器.和定义组合在一起. 2.例子 有一种将result用作val(而不是var)的方式,:“就地”构建result,而不是逐项构建,利用yield关键字,当 ...

  3. ToolBarTray

    <ToolBarTray DockPanel.Dock="Top"> <ToolBar ToolBarTray.IsLocked="True" ...

  4. cognos report同比环比以及默认为当前月分析

    现在的需求是按月份分析不同时期的余额数据,.(报表工具:cognos report:建模工具:FM) ------------------------------------------------- ...

  5. 12款程序员们最爱的Bootstrap模板

    如果你还没有开始使用Bootstrap模板,那你可真是有够OUT,这是一个帮助你快速开发的工具,Bootstrap是基于jQuery框架开发的,它在jQuery框架的基础上进行了更为个性化和人性化的完 ...

  6. 互斥锁属性PTHREAD_MUTEX_RECURSIVE

    四.互斥锁属性 线程和线程的同步对象(互斥量,读写锁,条件变量)都具有属性.在修改属性前都需要对该结构进行初始化.使用后要把该结构回收.我们用pthread_ mutexattr_init函数对pth ...

  7. ls命令(转)

    原文:http://www.cnblogs.com/peida/archive/2012/10/23/2734829.html ls命令是linux下最常用的命令.ls命令就是list的缩写缺省下l ...

  8. Tomcat日志格式自定义

    设置日志显示信息格式,默认情况下,Tomcat的访问日志是不记录的.需要在serve.xml中修改配置,去掉注释.     <!--         <Valve className=&q ...

  9. SVN如何查看修改的文件记录

    主要是有四个命令,svn log用来展示svn 的版本作者.日期.路径等等:svn diff,用来显示特定修改的行级详细信息:svn cat,取得在特定版本的某文件显示在当前屏幕:svn  list, ...

  10. UsageGrideReport++

      迁移时间:2017年5月20日11:42:02CreateTime--2016年9月29日15:46:15Author:Marydon版本Gride Report++6.0使用说明:参考链接:ht ...