ANDROID安卓activity与fragment,activity之间互相传值(一)

 

其实一直以来想写一点东西,但是项目都很赶,很有什么时间,但是今天公司换好新地址了,所以比较有感触,就决定来写一些东西,比较一下开始。

先说一下activity之间为什么要传值,因为在我们开发的过程中,每个界面活动之间都是有关联的,所以这些关联一般靠什么来维持,比较常用的就是传值了,传值有什么好处呢,就是不用调用

</pre>存储,安卓自带的引用存储,也就是GC机制中,只要你持有引用,是不会被内存所自动清除的,所以我们用传值,第一,可以大部分的解决我们的问题,第二,解决缓存,操作方便,使用快捷,熟练的掌握这个是开发安卓所必备的。<p></p><p><span style="font-size:24px;">今天就写的是activity往activity传值。</span></p><p><span style="font-size:24px;"></span></p><p style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; font-family: Arial; font-size: 14px; line-height: 26px;"><span style="font-size: 18px;">一个SendActivity(发送数据的ACTIVITY),一个ReceiverActivity(接受数据,也就是使用数据的ACTIVITY)为了简单起见,每个Activity对应的布局文件中都只有一个按钮。</span></p><p style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; font-family: Arial; font-size: 14px; line-height: 26px;"><span style="font-size: 18px;"></span></p><p style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; font-family: Arial; font-size: 14px; line-height: 26px;"><span style="font-size: 18px;"> SendActivity的java代码</span></p><p style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; font-family: Arial; font-size: 14px; line-height: 26px;"><span style="font-size: 18px;"></span><pre name="code" class="java">public class SendActivity extends Activity {  
  
    @Override  
    public void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);  
          
        setContentView(R.layout.activity_send);  
          
        //获取按钮对象  
        Button btnSendButton = (Button)findViewById(R.id.btnSend);  
        btnSendButton.setOnClickListener(new OnClickListener() {              
            public void onClick(View v) {  
                  
                Intent intent = new Intent();  
                //第一参数取的是这个应用程序的Context,生命周期是整个应用  
                //第二个参数是要跳转的页面的全路径  
                intent.setClassName( getApplicationContext(), "com.example.testofdialog.ReceiveActivity" );  
                //Bundle类用作携带数据,它类似于Map,用于存放key-value名值对形式的值  
               // Bundle b = new Bundle();   
               // b.putString("我是key", "这里就是你要传递的内容了");  
                //此处使用putExtras,接受方就响应的使用getExtra  
                //intent.putExtras( b );    
<span style="white-space:pre">		</span>//此处也可以直接用INTent来传一些单个的值
<span style="white-space:pre">		</span>//bundle一半用来传一些实体类,但是实体类需要实例化
<span style="white-space:pre"></span><pre style="background-color:#2b2b2b;color:#a9b7c6;font-family:'宋体';font-size:12.0pt;"><span style="white-space:pre">		</span>//intent.putExtra(<span style="color:#6a8759;">"这里是你传值的标志,取值的时候可以用"</span><span style="color:#cc7832;">,</span><span style="color:#6a8759;">"这里传你的需要穿的值,及个个类型"</span>)<span style="color:#cc7832;">;</span>
<span style="white-space:pre">		</span>intent.putExtras( b )
startActivity(intent); } }); } }
 
ReceiveActivity的java代码 

public class ReceiveActivity extends Activity {  
  
    @Override  
    public void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);  
          
        setContentView(R.layout.activity_receive);  
          
        Button btnReceiveButton = (Button)findViewById(R.id.btnReceive);  
        btnReceiveButton.setOnClickListener(new OnClickListener() {           
            public void onClick(View v) {                 
                //最后的参数一定要和发送方的相同,否则得到空值  
<pre style="background-color:#2b2b2b;color:#a9b7c6;font-family:'宋体';font-size:12.0pt;"><span style="color:#cc7832;">if </span>(<span style="font-size: 12pt;">getIntent().getExtras()</span>!=<span style="color: rgb(204, 120, 50);">null</span>)
{<span style="white-space:pre">	</span>

	//这是获取序列化的类
   teaminfo = bundle.getSerializable("这是你的属性");
//这是直接获取单个属性
String rString = getIntent().getExtras().getString("我是key");  
}
Toast.makeText(ReceiveActivity.this, rString, Toast.LENGTH_SHORT).show(); } }); } }
 这是简单的ACTIVITY向ACTIVITY进行传值,另外还有比如要传到第三个activity传值,或者与fragment传值,后续我都会写出, 

另外由于这次比较慌忙,也是刚开始写博客,代码可能比较混乱,所以大家都担待,期待以后更好的作品吧,嘎嘎大笑大笑大笑大笑大笑大笑大笑大笑大笑大笑大笑大笑大笑大笑大笑大笑大笑大笑大笑大笑大笑大笑大笑大笑大笑大笑大笑大笑


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值