当从一个Activity跳到另一个Activity,代码段如下:
Intent intent = new Intent(); //新建一个Intent对象
intent.setClass(Activity1.this, Activity2.class); //指定intent要启动的类
startActivity(intent); //启动一个新的Activity其中intent.setClass(Activity1.this, Activity2.class); //指定intent要启动的类
比较困惑:
从参数上看, 是由一个“对象”跳到一个“类”, 而不是一个“对象”跳到另一个“对象”。是因为Activity2.class会自动创建一个对象吗? 那如果这样的话,用户会想传一个对象过去怎么办, 用户在另一外(例如后台线程)想调用Activity2的对象的功能怎么办?从表现形式上看, 我是否可以认为所谓的Activity组件, 其实就是windows开发里的回调函数, 没有类和对象之分, 不是由用户来调用的。 只不过在java里一切即对象的思维中, 把这个回调函数封装成类了,然后创造其对象的过程也由系统完成了?
另外, 组件有木有一个精确的定义, 组件, 类, 对象的区别有木有精确定义? 有木有啊有木有?
解决方案 »
- android可以读取U盘扇区吗
- 求指点啊, 怎么判断android的触摸屏 对应 /dev/input/event?(ps,?为数字)中的event 几?
- 必须在activity中操作文件夹吗?
- android共享数据:例LinkedList<Object>
- android popupwindow为什么不能移除屏幕
- 求一个4.0以上版本的framework.jar
- 请教一个存储设计,是存sqlite中还是存文件
- proguard混淆jar包,被混淆的类都不见了
- 把app编译到system/preload后没有apk
- Fragment中的setOnItemClickListener无效
- 如何让一个listview 填充剩余的空白?
- GUID存入到字节里面
Intent intent = new Intent();
intent.putExtra ("param_str", "Info from Activity01"); //向另一个Activity传递<name,value>,value采用string的格式,也可以是其他
intent.setClass (Activity01.this, OtherActivity.class ); //指出是哪个Activity,setClass(对象,类),对于嵌套类,为了提供良好的阅读方式并避免奇异,我们都指明是哪个类
Activity01.this.startActivity(intent); //启动另外的Activity,作为View的方法,可以直接使用startActivity,由于嵌套类,这样些可以清晰一些。接受传递过来的信息 Intent intent = getIntent ();
String value = intent.getStringExtra ("param_str");