Android:用bundle封装用户名和密码,传递到另外一个页面

Android:用bundle封装用户名和密码,传递到另外一个页面,第1张

bundle 依托于intent传递到另一个页面
Bundle bundle = new Bundle ();
bundleput("userName",userName);
bundleput("userPasswd",userPasswd);
Intent intent = new Intent(参数);
intentputExtra("mybundle",bundle);
startActivity(intent);
然后再另一个页面中用getIntent()接收这一个intent,再用intentgetBundle("mybundle")获取到bundle对象
基本原理就如上所述,建议看一下android中intent的用法

1、在Eclipse中创建Android项目实现用户注册界面。并在单击"提交"按钮时,启动另一个Activity显示成写的注册信息

2、修改新建项目的res\ayou目录下的布局文件xml在默认添加的垂直线性布局管理器中,添加用于用户注册信息的文本框和编辑框以及一个"提交"按钮。

3、打开默认创建的主活动MainActivity在onCreate()方法中,获取“提交”按钮,并为其添加单击事件监听器。

4、重写的onClick()方法。首先获取翰入的用户名、密码、确认密码和E-mail地址,并保存到相应的变量中;然后判断翰入信息是否为空,如果为空给出提示框,否则判断两次愉入的密码是否一致,如果不一致,将给出提示信息,并清空“密码,和”确认密码“编辑框。让”密码“编辑框获得焦点。否则,将录入的信息保存到Bundle中。并启动一个新的Activity显示愉入的用户注册信息。

Button submit=(Button)findViewById(Ridsubmit);//获取“提交”按钮
submitsetOnClickListener(new ViewOnClickListener(){
@Override
public void onClick(View v){
String user=((EditText)findViewById(Riduser))getText()toString();//获取输入的用户名
String pass=((EditText)findViewById(Ridpass))getText()toString();//获取输入的密码
String repass=((EditText)findViewById(Ridrepass))getText()toString();//获取输入的确认密码
String email=((EditText)findViewById(Ridemail))getText()toString();//获取输入的邮箱

if(!""equals(user) && !""equals(pass) && !""equals(email)){
        //判断两次输入的密码是否一致
if(!passequals(repass)){  
ToastmakeText(MainActivitythis,"两次输入的密码不一致,请重新输入!",ToastLENGTH_LONG)show();
((EditText)findViewById(Ridpass))setText("");//清空“密码”编辑框
((EditText)findViewById(Ridrepass))setText("");//清空“确认密码”编辑框
((EditText)findViewById(Ridpass))requestFocus(); //让“密码”编辑框获得焦点
}else{
//将收入与的信息保存到Bundle中,并启动一个新的Activitiy显示输入的用户注册信息
Intent intent=new Intent(MainActivitythis,RegisterActivityclass);
Bundle bundle=new Bundle(); //创建并实例化一个Bundle对象
bundleputCharSequence("user",user); //保存用户名
bundleputCharSequence("pass",pass); //保存密码
bundleputCharSequence("email",email); //保存邮箱名
intentputExtras(bundle);  //将Bundle对象添加到Intent对象中
startActivity(intent);  //启动新的Activity
}
}else{
ToastmakeText(MainActivitythis,"请将注册信息输入完整!",ToastLENGTH_LONG)show();
}
}
});

一般来说有三种方法:
1、序列化你的Apple对象 然后用Bundle来传输 至于序列化的东西,你可以百度一下相关知识,资料比较多而且也挺详细的。
2、将你的Apple变成静态对象,这样CActivity就可以调用到了,不过不推荐此方法
3、利用Application机制来传输对象 同样你可以百度一下,android 利用Application来传递对象。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12606349.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存