安卓Activity与Intent——窗口之间的传参

1、窗口直接跳转

1 Intent intent = new Intent(MainActivity.this, B.class);
2 startActivity(intent);

2、传值跳转

A—>B

1    Intent intent = new Intent(this, B.class);
2      Bundle bundle = new Bundle();
3      bundle.putString("Apple", "ss");
4      intent.putExtras(bundle);
5      startActivity(intent, 1);

B接收A的传值

1  Bundle bundle = this.getIntent().getExtras();
2  String reFlage = bundle.getString("Apple");

3、有返回值的跳转

 我们只是需要在另外加上两段代码:

  (1)将B中需要返回的值传给A:

1 Intent intent = new Intent(AppleActivity.this,  MyFristActivity.class);
2 intent.putExtra("Apple", "Apple!");
3 intent.putExtra("Not", "What\'s it!");
4 setResult(1, intent);
5 finish(); // 表示关闭B,否则A不能够接收B的传值

  (2)在A中重载onActivityResult方法来接收返回的参数。

 1 /*
 2      * 接收回传
 3      */
 4     @Override
 5     public void onActivityResult(int requestCode, int resultCode, Intent data) {
 6         super.onActivityResult(requestCode, resultCode, data);
 7 
 8         String result = data.getExtras().getString("Not");
 9         appleTextView = (TextView) findViewById(R.id.btn_return_apple_tv);
10         appleTextView.setText(result);
11         
12     }
 
4、弹出dialog
 
  dialog可以变相的看做是一个Acitivity,其构建方式和Activity一致,只需将其形式改变为弹出框,有两种方法:
 
  (1)在Mainfest.xml文件中修改样式为: 
 android:theme="@android:style/Theme.Dialog" 

   (2)调用代码:

LayoutInflater inflater = getLayoutInflater();
   View layout = inflater.inflate(R.layout.dialog,
     (ViewGroup) findViewById(R.id.dialog));

   new AlertDialog.Builder(this).setTitle("自定义布局").setView(layout)
     .setPositiveButton("确定", null)
     .setNegativeButton("取消", null).show();

 

转载于:https://www.cnblogs.com/crystal022/archive/2012/10/18/2724347.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值