zoukankan      html  css  js  c++  java
  • Android 使用 intent 实现简单登陆页面

    前言

    第一个 Android 程序,应该有些纪念的意义吧~

    主页面布局

    给 Button 添加响应函数:android:onClick="login"

    public void login(View view)
    {
        String name;
        String password;
    
        EditText getname = (EditText)findViewById(R.id.editText);
        EditText getpassword = (EditText)findViewById(R.id.editText2);
    
        name = String.valueOf(getname.getText());
        password = String.valueOf(getpassword.getText());
    
        if (name.equals("pengzhendong")&&password.equals("950311")) {
            Intent intent = new Intent(this, ResultActivity.class) ;
            intent.putExtra("Name", name);
            intent.putExtra("Password", password);
    
            startActivity(intent) ;
        } else {
            Toast show_msg = Toast.makeText(getApplicationContext(), "用户名或者密码错误!", Toast.LENGTH_LONG);
            show_msg.setGravity(Gravity.CENTER, 0, 0);
            show_msg.show();
        }
    }
    

    通过 Intent 从当前页面跳转到 ResultActivity 页面,为了在登陆后的页面显示用户名和密码,通过 intent.putExtra() 将变量作为数组传过去。

    登陆后页面

    public class ResultActivity extends AppCompatActivity {
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_result);
    
            String name = this.getIntent().getStringExtra("Name");
            String password = this.getIntent().getStringExtra("Password");
    
            TextView result = (TextView)findViewById(R.id.textView3);
            result.setText("欢迎" + name + ", 你的密码是:" + password);
        }
    }
    

    通过getIntent().getStringExtra() 获取传过来的用户名和密码。

    Bundle

    如果要传递的数据比较多的话可以考虑用 Bundle 来传值:

    Bundle bundle = new Bundle();  
    bundle.putString("key", "value");  
    intent.putExtras(bundle); 
    

    获取:

    Bundle bundle = this.getIntent().getExtras();  
    value = bundle.getString("key");
  • 相关阅读:
    华为S12700 NQA配置
    斐讯K1 K2 开启Telnet
    存储的一些基本概念(HBA,LUN)
    华为AR配置内部服务器示例(只有1个公网IP)
    使用nginx 做kbmmw REST 服务的负载均衡
    第一个 macOS 64位 kbmmw 服务器
    使用FMXlinux 开发linux 桌面应用
    推荐一套免费跨平台的delphi 哈希及加密算法库
    使用kbmmw 的调度事件动态显示时间
    提高sqlite 的运行性能(转载)
  • 原文地址:https://www.cnblogs.com/pengzhendong/p/4910138.html
Copyright © 2011-2022 走看看