bundle java_Bundle类
Bundle类是一个key-value对,“A mapping from String values to various Parcelable types.”
类继承关系:
java.lang.Object
android.os.Bundle
Bundle类是一个final类:
public final class
Bundle
extends Objectimplements Parcelable Cloneable
两个activity之间的通讯可以通过bundle类来实现,做法就是:
(1)新建一个bundle类
Bundle mBundle = new Bundle();
(2)bundle类中加入数据(key -value的形式,另一个activity里面取数据的时候,就要用到key,找出对应的value)
mBundle.putString("Data", "data from TestBundle");
(3)新建一个intent对象,并将该bundle加入这个intent对象
Intent intent = new Intent();
intent.setClass(TestBundle.this, Target.class);
intent.putExtras(mBundle);
完整代码如下:
android mainfest.xml如下:
package="com.tencent.test"
android:versionCode="1"
android:versionName="1.0">
android:label="@string/app_name">
两个类如下:intent从TestBundle类发起,到Target类。
类1:TestBundle类:
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class TestBundle extends Activity {
private Button button1;
private OnClickListener cl;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
button1 = (Button) findViewById(R.id.button1);
cl = new OnClickListener(){
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Intent intent = new Intent();
intent.setClass(TestBundle.this, Target.class);
Bundle mBundle = new Bundle();
mBundle.putString("Data", "data from TestBundle");//压入数据
intent.putExtras(mBundle);
startActivity(intent);
}
};
button1.setOnClickListener(cl);
}
}
类2: Target
import android.app.Activity;
import android.os.Bundle;
public class Target extends Activity{
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.target);
Bundle bundle = getIntent().getExtras(); //得到传过来的bundle
String data = bundle.getString("Data");//读出数据
setTitle(data);
}
}
布局文件:
main.xml
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:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/button"
android:id = "@+id/button1"
/>
target.xml
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/target"
/>
String.xml
Hello World, TestBundle!
测试Bundle用法
点击跳转
来到target activity
结果:
跳转结果:
bundle java_Bundle类相关推荐
- Android Activity类讲解(一)
--by CY[kotomifi@gmail.com] 1.protected void onCreate(Bundle savedInstanceState) { throw new Runtime ...
- 【“零起点”--百度地图手机SDK】如何添加地图图层+按钮事件+水平垂直布局?...
摘要:我们在这一章将学习到如何通过按钮事件来控制地图图层(交通流量图,卫星图)的显示,以及如何对android应用进行水平和垂直布局. -------------------------------- ...
- Android之一窥究竟Activity间的数据传递以及Intent的用处
1.Activity与Intent * 1.1何为Intent * 1.2Intent的用武之地 * 1.3Activity间的数据传递 转载请标明出处: http://blog.csdn.net/h ...
- idea spring 中没有标识_Spring 优雅的国际化实现
国际化 简单来说,国际化就是让应用(app.web)适应不同的语言和地区的需要,比如根据地区选择页面展示语言. i18n=internationalization,首末字符i和n,18为中间的字符数 ...
- Symfony2Book06:路由
对于任何严谨的web应用程序而言漂亮的URL是绝对必须的.这意味着要离开诸如index.php?article_id=57这样丑陋的URL,而出现类似/read/intro-to-symfony的UR ...
- 走近Java模块化系统OSGi
OSGI是什么? 刚入软件开发行业的初哥可能会觉得到处都是值得顶礼膜拜的大神,到处都是复杂到自已无法把握的代码,惊叹这些大神怎样能写出如此神奇的程序出来?! 其实真正好的软件的代码,应该是结构清晰,简 ...
- 探索 OSGi 框架的组件运行机制
在目前的 Java 开发平台中,对于组件开发过程,比如打包.部署和验证等,并没有一个统一的标准.正因如此,许多 Java 项目,例如 JBoss 和 Net Beans,都拥有一套自定义的组件开发规范 ...
- chisel快速入门(二)
上一篇见此: chisel快速入门(一)_沧海一升的博客-CSDN博客简单介绍了chisel,使硬件开发者能快速上手chisel.https://blog.csdn.net/qq_21842097/a ...
- osgi java_使普通的旧Java OSGi兼容
osgi java 尽管OSGi在Java世界中越来越流行,但仍有许多Java应用程序和库尚未设计成可在OSGi中使用. 有时您可能需要在OSGi环境中运行这样的代码,或者是因为您想利用OSGi本身提 ...
最新文章
- 网络安全不是奢侈品,而是必需品
- java创建型_Java创建型模式
- submit text 插件安装教程
- win10和ubuntu18双系统时间同步(20190604亲测可行)
- 华三 h3c 基于IP子网的vlan
- 一文深入了解:分布式系统中的缓存架构
- mysql 索引选择原则 07
- 图像处理之相似图片识别(直方图应用篇)
- 全新电影社交观影,满足影迷移动巨幕与移动3D体验
- 2.2 PB-ADV入网过程
- jq 清空、删除、添加、替换数组的简单用法
- 拼多多店铺类型区别介绍
- QT-磨砂玻璃效果实现
- MTK 按键驱动流程总结
- java 小数乘法_集合复习教案
- php批量替换文件内容,写了个遍历目录、批量替换文件内容的类
- 第 24 章 脚本编制参考(三) 类Finance
- mysql 创建外键约束以及注意事项
- ubuntu snort-mysql_安装和配置入侵检测与Snort,ACIDBASE,MySQL和Apache2在Ubuntu 9.04使用SPM...
- Java实现验证码识别