当从一个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里一切即对象的思维中, 把这个回调函数封装成类了,然后创造其对象的过程也由系统完成了?
另外, 组件有木有一个精确的定义, 组件, 类, 对象的区别有木有精确定义? 有木有啊有木有?
解决方案 »
- 求高手解决布局问题,急。。。。
- 关于asp返回true或者false给android手机客户端的问题,客户端只用什么方法接受到返回的true或者false,请教!
- 视频分辨率获取MediaMetadataRetriever
- 急求Android2.0游戏开发宝典
- pppd: This system lacks kernel support for PPP
- 关于SearchManager的问题?
- cocos2d-x 环境配置build-win32.bat执行失败!
- eclipse导入cocos2d引擎的hellocpp后提示出错
- webview设置cookie
- 软键盘遮挡导航栏问题
- 如何让一个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");