zoukankan      html  css  js  c++  java
  • activity间的传值

    1.值由A.class传递到B.class
    A.class中:

    01Intent intent = new Intent(); 
    02 //设置传递方向  
    03intent.setClass(A.this,B.class);  
    04//绑定数据  
    05intent.putExtra("username1",username);  
    06intent.putExtra("userpwd1"userpwd); 
    07 /*或者绑定成一捆数据 
    08Bundle data = new Bundle(); 
    09data.putString("username1",username); 
    10data.putString("userpwd1",userpwd);
    11intent.putExtras(data); 
    12*/  
    13//启动activity  
    14this.startActivity(intent);  


    B.class中:

    1Intent intent = getIntent();  
    2//获取数据  
    3String username = intent.getStringExtra("username1");  
    4String userpwd = intent.getStringExtra("userpwd1");  
    5/* Bundle data = intent.getExtras(); 
    6String username = intent.getString("username1"); 
    7String userpwd = intent.getString("userpwd1"); */

     2.除了A.class可以向B.class传值外,B.class也可以返回值

     A.class中

     this.startActivity(intent);

     改为this.startActivityFroResult(intent,1);//1为请求码

     B.class中

     对传过来的intent对象赋新值

    1intent.putExtra("username2",username2);  
    2intent.putExtra("userpwd2",userpwd2); 
    3this.setResult(1,intent);  
    4this.finish();//结束焦点


    A.class中重写

    1@Override protected void onActivityResult(int requestCode,int resultCode,Intent data){ 
    2 super.onActivityResult(requestCode,resultCode,data);  
    3 if(resultCode==1)  
    4
    5 //可从data中取出值  
    6}  
    7}

     A.class中取出B.class中intent传过来的值

     3.intent.setClass(A.this,B.class)的另一种写法

    在manifest.xml中B的Activity中加入

    1<intent-filter>
    2 
    3<action android:name="com.showB">//这里可以随便写
    4 
    5<category android:name = "android.intent.category.DEFAULT">
    6 
    7</intent-filter>

    那么A中就可以直接写

    intent.setAction("com.showB");

    来代替

    intent.setClass(A.this,B.class);

    这也就提示了我们利用intent-filter可以实现其他很多功能


    程序中调用其它程序的Activity

    1 Intent intent = new Intent(Intent.ACTION_MAIN);
    2 ComponentName componentName = new ComponentName("com.android.settings","com.android.settings.WirelessSettings");
    3 intent.setComponent(componentName);
    4   
    5 startActivity(intent);
    "com.android.settings"是要打开的程序包名,"com.android.settings.WirelessSettings"是要打开的Activity。
  • 相关阅读:
    salt执行报错一例
    state配置语言实战
    salt-ssh使用
    八、job管理
    六、saltstack的module组件
    五、Pillar数据管理中心
    Web Server与App Server
    二分查找的时间复杂度(TODO )
    二分查找的时间复杂度(TODO )
    git : error setting certificate verify locations
  • 原文地址:https://www.cnblogs.com/shihao/p/2713052.html
Copyright © 2011-2022 走看看