- 12
- 0
- 约9.81千字
- 约 8页
- 2016-08-15 发布于重庆
- 举报
android开发教程启动其他的Activity
启动其他的Activity
在完成上一课(建立简单的用户界面)后,你已经拥有了显示一个activity(唯一屏幕)的app(应用),并且这个activity包含了一个文本字段和一个按钮。 在这节课中,你将会添加一些新的代码到MainActivity中,当用户点击发送(Send)按钮时启动一个新的activity。
响应Send(发送)按钮
响应按钮的on-click(点击)事件,打开fragment_main.xml布局文件然后在Button(按钮)元素中添加android:onclick属性:
Button
android:layout_width=wrap_content
android:layout_height=wrap_content
android:text=@string/button_send
android:onClick=sendMessage //sendMessage is the method name
/
android:onclick属性的值sendMessage就是当用户点击你屏幕按钮时触发方法的名字。
添加相应的方法在MainActivity类中:
/** 当用户点击按钮时会被调用 */
public void sendMessage(View view) {
// 响应按钮的事件处理逻辑
}
请注意,为了让系统能够将这个方法(你刚在MyFirstActivity中添加的sendMessage方法)与在android:onClick属性中提供的方法名字匹配,它们的名字必须一致,特别是,这个方法必须满足以下条件:
公共的
没有返回值
有唯一的视图(View)参数(这个视图就是将被点击的视图)
接下来,你可以在这个方法中编写读取文本内容的代码,并将该内容传到另一个Activity。
构建一个Intent
Intent是在不同组件中提供运行时连接的对象(比如两个Activity)。Intent代表一个应用想去做什么事,你可以用它做各种各样的任务,不过大部分的时候他们被用来启动另一个Activity。
在sendMessage()方法中创建一个Intent并启动名为DisplayMessageActivity的Activity:
Intent intent = new Intent(this, DisplayMessageActivity.class);
在这之前你需要导入Intent类:
import android.content.Intent;
Tip:在中,按 + enter可以导入缺失的类(在Mac中使用Cmd + Shift + O )
在这个Intent构造函数中有两个参数:
第一个参数是Context(之所有可以用this是因为当前Activity(MyFirstActivity)是Context的子类)
系统需要传递Intent的应用组件的class对象(在这个案例中,为应该被启动的activity)。
Note:如果你正在使用的是类似Eclipse的IDE,这里对DisplayMessageActivity的引用会报错,因为这个类还不存在;暂时先忽略这个错误,你很快就要去创建这个类了。
一个Intent(意图)不仅允许你启动另一个Activity,同时也可以传递一个数据包到另一个Activity,在sendMessage()方法里用方法得到EditText元素,然后将它的文本信息添加到Intent(意图):
Intent intent = new Intent(this, DisplayMessageActivity.class);
EditText editText = (EditText) findViewById(R.id.edit_message);
String message = editText.getText().toString();
intent.putExtra(EXTRA_MESSAGE, message);
Note:你需要导入android.widget.EditText类,再定义EXTRA_MESSAGE的值。
Intent可以携带各种数据类型的集合的key-value附加对,称作extras。?putExtra()方法把键名作为第一个参数,把值作为第二个参数。putExtra(),参见putExtra()
为了让下一个activity能够查询额外数据(extra data),应该用公共常量为Intent定义键。所以把EXTRA_MESSAGE定义添加到MainActivity类:
public class MainActivity extends ActionBarActivity {
public fina
您可能关注的文档
- 王铭州毕业设计PIC在全自动洗衣机控制系统中的研究与应用.doc
- 9开放经济模型.ppt
- 王青实习报告.doc
- 王高雄版《常微分方程》习题解答4.2.doc
- 7.4重力势能同步练习(附答案).doc
- 7.41-02绿化工程验收接管标准作业规程.doc
- 9的倍数特征.ppt
- 《练习十五》教学课件.ppt
- 9种毁车的汽车美容误区.doc
- 9种储蓄方法.docx
- 2026年X86架构工控主板项目可行性研究报告(市场数据调查、监测研究).docx
- 量子加密通信产业化2026年经济效益预测报告.docx
- 2026年数字藏品市场NFT与实体资产绑定模式价值评估.docx
- 2026年全球智能城市大脑交通管理优化技术应用.docx
- 2026年影视行业内容制作资本运作与票房融资策略分析报告.docx
- 2026年食用盐行业品牌建设策略与监管合规实践报告.docx
- 2026年新能源生物质能行业政策支持与未来展望报告.docx
- 2026年传感器芯片行业市场发展与应用领域分析.docx
- 2026年稀土永磁等行业价格波动对产业链利润传导机制研究报告.docx
- 2026年全球3D打印生物组织伦理与法规挑战.docx
最近下载
- 2025【燕京啤酒公司发展能力存在的问题及完善对策研究4900字】.doc VIP
- AXI4Spec中文版及常见问题解答_axi协议验证常见问题.docx
- 2024年四川省绵阳市中考数学试题卷(含答案解析).docx
- 大数据技术与应用专业人才需求分析和预测性调研报告.pdf VIP
- 眼科护士护理人员三基考核试题题库与答案.docx VIP
- JT∕T 1293-2019 客运码头安全管理基本要求(可复制版).pdf
- 常用封隔器技术原理.pptx VIP
- 高教社2026人工智能经济学教学课件Ch6.人工智能与要素市场.pptx VIP
- 2025年新能源安规(光伏)试卷及答案.docx VIP
- 山区行车安全培训.pptx VIP
原创力文档

文档评论(0)