首页 > 其他分享 >***4完善登录界面和界面跳转

***4完善登录界面和界面跳转

时间:2023-04-06 17:11:19浏览次数:39  
标签:layout 登录 int 跳转 Activity 界面 android id

1.button跳转【基本步骤】

  1.两个activity

  2.跳转前界面-->跳转后界面

  3.声明控件--找到控件--实现跳转

2.匹配对应用户名和密码--只讲一种方法,因为实际操作时通过插卡来实现,所以这里你没有必要复杂化

  1.获取edittest里面的用户名和密码

  2.与规定进行匹配

  3.成功则进行跳转

 

Android页面跳转大概有三种情形:

1.从A跳转到B,不带数据。

2.从A跳转到B,带数据。

3.从A跳转到B,A接受B返回的数据且做相应处理。

第一种和第二种情形非常简单,下面主要介绍第三种情形:

在介绍之前先将第三种情形的大致流程说一下, 使用startActivityForResult(Intent intent, int requestCode)方法打开新的Activity,然后新的Activity使用setResult(int resultCode)只返回结果不带数据,或者setResult(int resultCode, Intent data)两者都返回!当这个新Activity关闭后,系统都会调用前面Activity的onActivityResult(int requestCode, int resultCode, Intent data)方法。

requestCode,请求码:请求码的值是根据业务需要由自已设定,用于标识请求来源。

例如:一个Activity有两个按钮,点击这两个按钮都会打开同一个Activity,不管是那个按钮打开新Activity,当这个新Activity关闭后,系统都会调用前面Activity的onActivityResult(int requestCode, int resultCode, Intent data)方法。使用startActivityForResult(Intent intent, int requestCode)方法打开新的Activity在onActivityResult()方法如果需要知道新Activity是由那个按钮打开的,并且要做出相应的业务处理。

resultCode,结果码:在一个Activity中,可能会使用startActivityForResult()方法打开多个不同的Activity处理不同的业务,当这些新Activity关闭后,系统都会调用前面Activity的onActivityResult(int requestCode, int resultCode, Intent data)方法。为了知道返回的数据来自于哪个新Activity,在onActivityResult()方法中可以这样做(ResultActivity和NewActivity为要打开的新Activity):

 

public class Myapp extends Activity {

private Button buttonNewInput;

private TextView displayContent;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

buttonNewInput = (Button)findViewById(R.id.buttonNewInput);

displayContent = (TextView)findViewById(R.id.displayContent);

buttonNewInput.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View v) {

Intent intent = new Intent();

intent.setClass(Myapp.this, Input.class);

startActivityForResult(intent, 0);

}

});

}

@Override

protected void onActivityResult(int requestCode, int resultCode, Intent data) {

if(requestCode == 0) {

if(resultCode == Activity.RESULT_OK) {

SharedPreferences preferences = getSharedPreferences("Text", 0);

displayContent.setText(preferences.getString("text", null));

}

}

//        super.onActivityResult(requestCode, resultCode, data);

}





android:orientation="vertical"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

>

 

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:text="@string/hello"

android:id="@+id/displayContent"/>

 

android:layout_height="wrap_content"

android:text="新窗口"

android:layout_width="wrap_content"

android:id="@+id/buttonNewInput">









public class Input extends Activity {

private EditText editTextInput;

private Button buttonInputOK;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.input);

editTextInput = (EditText)findViewById(R.id.editTextInput);

buttonInputOK = (Button)findViewById(R.id.buttonInputOK);

buttonInputOK.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View v) {

String text = editTextInput.getText().toString();

SharedPreferences preferences = getSharedPreferences("Text", 0);

SharedPreferences.Editor editor = preferences.edit();

editor.putString("text", text);

if(editor.commit()) {

setResult(Activity.RESULT_OK);

}

finish();

}

});

}

}


xmlns:android="http://schemas.android.com/apk/res/android"

android:layout_width="fill_parent"

android:layout_height="fill_parent" android:orientation="vertical">

 

android:layout_height="wrap_content"

android:layout_width="fill_parent"

android:id="@+id/editTextInput">

 

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="确定" android:id="@+id/buttonInputOK">

 

标签:layout,登录,int,跳转,Activity,界面,android,id
From: https://www.cnblogs.com/yzx-sir/p/17293393.html

相关文章

  • 微信公众号开发--获取网页授权并自定义菜单点击获得openid跳转
    之前做了个自定义菜单的click事件,但是订阅号升级为服务号,相应的有了网页的基础授权(需要认证的服务号)其中使用到了自定义菜单接口:http://mp.weixin.qq.com/wiki/13/43de8269be54a0a6f64413e4dfa94f39.html网页授权获取用户基本信息接口:http://mp.weixin.qq.com/wiki/17/c0f37d5704f0......
  • vue3中路由错误自动跳转404页面 路由表写法
    定义路由表import{createRouter,createWebHashHistory}from"vue-router";constroutes=[ { path:"/", name:"home", component:Home, },//... { path:"/404", name:"404", component:()=&......
  • **2制作登录界面1
    AndroidStudio是Google推出的Android应用程序开发工具包。在AndroidStudio中,您可以使用各种工具来设计和开发Android应用程序。如果您想要创建登录界面,可以使用AndroidStudio中的布局和组件来实现。下面是一些基本步骤:打开AndroidStudio并创建新项目。在......
  • JWT 实现登录认证 + Token 自动续期方案
    要实现认证功能,很容易就会想到JWT或者session,但是两者有啥区别?各自的优缺点?应该Pick谁?夺命三连区别基于session和基于JWT的方式的主要区别就是用户的状态保存的位置,session是保存在服务端的,而JWT是保存在客户端的认证流程基于session的认证流程用户在浏览器中输入用户名和密码,服务......
  • HMI人机界面相关介绍及人机界面设计
    在工业自动化领域,HMI是人机界面的缩写。在工业中使用HMI来控制和监控机器。如果没有HMI,就很难在工业中拥有良好的自动化流程。人机界面的定义人机界面(HMI)是一种用户界面,允许人类操作员与机器或过程进行交互。HMI通常用于工业环境,允许操作员监视和控制过程,例如工厂或发电厂中......
  • 界面控件开发包DevExpress v22.2.5正式发布|附高速下载
    DevExpress 拥有.NET开发需要的所有平台控件,包含600多个UI控件、报表平台、DevExpressDashboardeXpressApp框架、适用于VisualStudio的CodeRush等一系列辅助工具。屡获大奖的软件开发平台DevExpressv22.2已全新发布,该版本拥有众多新产品和数十个具有高影响力的功能,可为桌面......
  • 界面控件DevExtreme v23.1抢先体验,增强的UI/UX自定义功能!
    DevExtreme拥有高性能的HTML5/JavaScript小部件集合,使您可以利用现代Web开发堆栈(包括React,Angular,ASP.NETCore,jQuery,Knockout等)构建交互式的Web应用程序,该套件附带功能齐全的数据网格、交互式图表小部件、数据编辑器等。本文的目的就是为了让开发者预览即将发布的DevExtreme功......
  • MySQL登录时出现Access denied for user ‘root‘@‘localhost‘ (using password: YE
    发现是springboot结合JDBC时,我这里输入纯数字加点,就会出现这个问题。  后来我改数据库密码,改成字母开头的数据库密码,就可以了。 但是有个奇怪的是,我方式数字+点的密码是复制过去的,当时idea的编辑器,打开该密码是橙色的。可能是我当时复制的格式有问题。我现在输入并没有......
  • 做免密登录传输文件的时候报错:ERROR: Host key verification failed.:解决方法
    报错信息: 在做好公钥以后,准备进行传输到另一台机器的时候,发生了报错。 报错原因:1、在CSDN上面找到了问题的根源,是因为/root/.ssh/known_hosts文件里面有传输错误的记录。2、没有记录的都可以正常传输,至此才找到问题的解决办法。 解决方法:1、切换到/root/.ssh/:[root@......
  • jsp+servlet实现的人力资源管理系统(实现了注册登录、部门管理、招聘管理、培训管理、
    @目录jsp+servlet实现的人力资源管理系统实现功能截图系统功能使用技术完整源码jsp+servlet实现的人力资源管理系统本系统是一个servlet原生框架实现的人力资源管理系统,实现了注册登录、部门管理、招聘管理、用户管理、薪资管理、职位管理等常用功能。(文末查看完整源码)实现......