Activity学习(三)——跳转传值
Activity跳转,无返回结果
((Button) findViewById(R.id.Notepadv1)).setOnClickListener( new OnClickListener() {
public void onClick(View v) {
startActivity(new Intent (MyAndroidAppActivity.this, Notepadv1.class) );
}
});
Activity跳转,返回数据/结果
static final int SEND_SMS_REQUEST = 0;
static final int CALL_REQUEST = 1; ((Button) findViewById(R.id.sms)).setOnClickListener( new OnClickListener() {
public void onClick(View v) {
Intent intent = new Intent(MyAndroidAppActivity.this, SendSMSActivity.class);
startActivityForResult(intent, SEND_SMS_REQUEST);
}
}); @Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == SEND_SMS_REQUEST) {
if (resultCode == RESULT_OK) {
Toast.makeText(this, "Send SMS RESULT_OK", Toast.LENGTH_SHORT).show();
}else if (resultCode == RESULT_CANCELED) {
Bundle bundle = data.getExtras();
String phoneno = bundle.getString("phoneNO");
Toast.makeText(this, "Send SMS RESULT_CANCELED "+phoneno, Toast.LENGTH_SHORT).show();
}
}else if (requestCode == CALL_REQUEST) {
if (resultCode == RESULT_CANCELED) {
Toast.makeText(this, "Call RESULT_CANCELED", Toast.LENGTH_SHORT).show();
}
}
}
((Button) findViewById(R.id.send)).setOnClickListener( new Button.OnClickListener() {
public void onClick(View v) {
SendSMSActivity.this.setResult(RESULT_OK);
SendSMSActivity.this.finish();
}
}):
((Button) findViewById(R.id.cancel)).setOnClickListener( new Button.OnClickListener() {
public void onClick(View v) {
// 实例化 Bundle,设置需要传递的参数
Bundle bundle = new Bundle();
bundle.putString("phoneNO", "020-123"); SendSMSActivity.this.setResult(RESULT_CANCELED, SendSMSActivity.this.getIntent().putExtras(bundle));
SendSMSActivity.this.finish();
}
}); @Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
// 是否触发按键为back键
if (keyCode == KeyEvent.KEYCODE_BACK) { // 实例化 Bundle,设置需要传递的参数
Bundle bundle = new Bundle();
bundle.putString("phoneNO", "020-123"); setResult(RESULT_CANCELED, this.getIntent().putExtras(bundle));
this.finish();
return true;
}else {
return super.onKeyDown(keyCode, event);
}
}
Activity传送数据
// 在某个按钮响应事件里
Intent intent = new Intent(this, TextInputActivity.class);
intent.putExtra("Text", mText);
intent.putExtra("TextColor", mTextColor);
intent.putExtra("TextSize", mTextSize);
intent.putExtra("TextBold", mTextBold); startActivityForResult(intent, REQUEST_TEXT);
// in onCreate(Bundle savedInstanceState)
Bundle extras = getIntent().getExtras();
mText = extras.getString("Text");
mTextColor = extras.getInt("TextColor");
mTextSize = extras.getFloat("TextSize");
mTextBold = extras.getBoolean("TextBold");
转自:http://android.blog.51cto.com/268543/323982
Activity学习(三)——跳转传值的更多相关文章
- 利用onNewIntent避免Activity之间的跳转传值多次实体化
onNewIntent 需要注意的是: 1.通过Intent启到一个Activity的时候,就算已经存在一个相同的正在运行的Activity,系统也会创建一个新的Activity实例.为了不让Acti ...
- Android开发之Activity的创建跳转及传值
在Android系统的江湖中有四大组件:活动(Activity), 服务(Service), 广播接收器(Broadcast Reciver)和内容提供者(Content Provider).今天所介 ...
- Android中实现activity的页面跳转并传值
一个Android应用程序很少会只有一个Activity对象,如何在多个Activity之间进行跳转,而且能够互相传值是一个很基本的要求. 本次我们就讲一下,Android中页面跳转以及传值的几种方式 ...
- MUI框架开发HTML5手机APP(二)--页面跳转传值&底部选项卡切换
概 述 JRedu 在上一篇博客中,我们学习了如何使用Hbuilder创建一个APP,同时如何使用MUI搭建属于自己的第一款APP,没有学习的同学可以戳链接学习: http://www.cnblo ...
- 第35讲 Activity入门和跳转
第35讲Activity入门和跳转 1.Activity Activity是用户接口程序.在Android当中,Activity提供可视化的用户界面,一个Android应用通常由多个activity组 ...
- Android JNI学习(三)——Java与Native相互调用
本系列文章如下: Android JNI(一)——NDK与JNI基础 Android JNI学习(二)——实战JNI之“hello world” Android JNI学习(三)——Java与Nati ...
- UWP 页面跳转传值
如果涉及到页面跳转,一般用Frame这个控件来管理不同的页面. <Grid Name="RootGrid"> <Frame Name="RootFram ...
- Android笔记(二十) Activity中的跳转和值传递
我们知道,一个APP是由若干个Activity组成的,那么各个Acitivity中肯定需要进行跳转以及传递数值以保证App的运行,现总结一下多个Activity之间的跳转和值传递. 显式Intent跳 ...
- day 82 Vue学习三之vue组件
Vue学习三之vue组件 本节目录 一 什么是组件 二 v-model双向数据绑定 三 组件基础 四 父子组件传值 五 平行组件传值 六 xxx 七 xxx 八 xxx 一 什么是组件 首先给 ...
- Activity组件:(一)通过显式意图和隐式意图来实现Activity间的跳转
一.通过显式意图来实现Activity间的跳转 显式意图是指在创建Intent对象时就指定接受者组件 /** * 下面是通过显式意图进行跳转,即明确写出要跳转到SecondActivity.class ...
随机推荐
- 为什么要用Message Queue
摘录自博客:http://dataunion.org/9307.html?utm_source=tuicool&utm_medium=referral 为什么要用Message Queue 解 ...
- Jquery 1.8.2 click function - 动态
Jquery 动态按钮方法如下: $("#parentID").on("click",'.classname',function(){$(this).par ...
- Java实现Socket之TimeClient
Java实现Socket之TimeClient 代码内容 从time.nist.gov服务器的37号端口得到时间信息,并对时间进行解析后显示出来 代码实现 /* TimeClient.java */ ...
- Java存储密码用字符数组
字符数组和字符串都可以用于存储文本数据,但是在选择具体哪一种时,如果你没有针对具体的情况是很难回答这个问题的.但是任何与字符串相关的问题一定有线索可以在字符串的属性里面找到,比如不可变性.他就用这种方 ...
- 向Array中添加堆排序
堆排序思路 堆排序是一种树形选择排序方法(注意下标是从1开始的,也就是R[1...n]). 1) 初始堆: 将原始数组调整成大根堆的方法——筛选算法:比较R[2i].R[2i+1]和R[i],将最大者 ...
- scala伴生对象,apply()及单例
1:伴生对象与apply方法 如果一个class与一个object具有相同的名字,那么我们就认为它们互为伴生.object为class的伴生对象.如下图所示,object Apply为class Ap ...
- 我给女朋友讲编程html系列(2) --Html标题标签h1
Html是一门标签语言,因此学习Html最快的方式就是学习使用html标签. html标题标签:h1,h2,h3,h4,h5,h6 标题标签总共有6个,h1,h2,h3,h4,h5,h6,从h1到h6 ...
- 7、android的button如何平铺一张图片?
我想要实现的效果:,但是设计师给的是这样的:. 首先我想到的是这就像windows电脑设置壁纸有什么拉伸.自适应.平铺等类型,这个应该就是传说中的平铺吧. 那么我们知道,一个普通的button,设置他 ...
- angular 嵌套实现树结构 ng-repeat ng-include
效果图 ang.html <!doctype html><html lang="en"><head> <meta charset=& ...
- shell ulimit -n
通过ulimit -n命令可以查看linux系统里打开文件描述符的最大值,一般缺省值是1024,