根据www.mars-droid.com:Andriod开发视频教学,先跳过书本《Beginning Android 2》的几个章,我是这两个资源一起看,需要进行一下同步。先初步了解一下应用具有多个Activity的处理情况。

视频中自然不会如同书本讲的仔细,胜在快速明了,反正也只是工具,所以这次主要重点在于如何操作。Intent用于在一个应用中多个Activity的调用和数据传递,也可用于调用其他服务(应用)。

1、Button触发

在《Android学习笔记(六):xml和widget》中,我们通过Android XML以及实现View.OnClickListener接口的方式来处理button触发调用,这里我们采用后一种方式,并做了稍稍改动。

public class Activity01 extends Activity {
private Button mybutton = null; public void onCreate(Bundle savedInstanceState) {
... ...
mybutton.setOnClickListener(new MyButtonListener());
} class MyButtonListener implements View.OnClickListener{
public void onClick(View v) {
... ... /* 在此,我们将调用另一个Activity */
}
}
}

2、编写另一个Activity

我们编写一个简单的Activity类OtherActivity,其中只有一个TextView。

public class OtherActivity extends Activity{
private TextView myTextView = null; protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.other);
myTextView = (TextView)findViewById(R.id.myTextView);
}
}

编写一个Activity,必须在AndroidManifest.xml中进行注册:

    <?xml version="1.0" encoding="utf-8"?>
<manifest ... ...>
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".Activity01" android:label="@string/app_name"> ... ... </activity>
<activity android:name=".OtherActivity" android:label="@string/other" /><!-- 在res/values/strings.xml中增加other的定义 <string name="other">It/'s other activity!</string> -->
</application>
</manifest>

3、通过Intent,在Activity01中调起OtherActivity,并向OtherActivity传递某个信息

在MyButtonListener中的onClick:

 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,由于嵌套类,这样些可以清晰一些。

4、在Otherctivity中接受传递的信息

 Intent intent = getIntent();
String value = intent.getStringExtra("param_str");

5、intent也可以调用其他的应用,例如发送短信

Uri uri = Uri.parse("smsto:0000123456");
Intent intent = new Intent(Intent.ACTION_SENDTO,uri);//Intent(String action,Uri uri)对uri进行某个操作,ACTION_SENDTO:Send a message to someone specified by the data.
intent.putExtra("sms_body", "This is my text info from Activity01."); //传递SMS的文本内容
Activity01.this.startActivity(intent); //启动另外的Activity,并不限于是否是同一个应用。系统收到相关消息,将调起相关应用

多个Activity和Intent(转)的更多相关文章

  1. Android 学习Activity(1)activity和intent

    工具是:JDK环境配置+SDK+ADT工具 一.Activity  主要作用: 1.用户与应用程序的接口 2.控件的容器 二.创建Activity要点:(在src中的目录下包里) 1.一个Activi ...

  2. 常见的Activity Action Intent常量

    Intent的中文意思是“意图,目的”的意思,可以理解为不同组件之间通信的“媒介”或者“信使”. 目标组件一般要通过Intent来声明自己的条件,一般通过组件中的<intent-filter&g ...

  3. 【转】Android Activity和Intent机制学习笔记----不错

    原文网址:http://www.cnblogs.com/feisky/archive/2010/01/16/1649081.html Activity Android中,Activity是所有程序的根 ...

  4. Android Activity和Intent机制学习笔记

    转自 http://www.cnblogs.com/feisky: Activity Android中,Activity是所有程序的根本,所有程序的流程都运行在Activity之中,Activity具 ...

  5. Activity 和 Intent

    Activity 和 Intent 一.Intent指向Activity 二.利用 Intent 向第二个 Activity 传数据 三.利用 Intent 接受第二个 Activity 的返回值 四 ...

  6. Activity及Intent

    1.Activity 在一个Android应用程序中,Activity是为用户操作而展示的可视化界面.比如你要打电话,这个时候的拨号界面就是一个Activity,你要发短信给你的女朋友,这个短信窗口就 ...

  7. 二、activity与Intent

    (一) 多个activity之间的跳转(无值传递) 第一步:创建activity(其实就是jave文件),并进行注册 在AndroidManifest.xml中 <activity androi ...

  8. 【Android开发学习笔记】【第三课】Activity和Intent

    首先来看一个Activity当中启动另一个Activity,直接上代码说吧: (1)首先要多个Activity,那么首先在res-layout下新建一个 Other.xml,用来充当第二个Activi ...

  9. 5、四大组件之一-Activity与Intent

    一.Activity的定义及作用 1)官方定义:Activity是Android应用程序提供交互界面的一个重要组件 . 也是Android最重要的组件之一 2)Activity是业务类 , 是承载应用 ...

随机推荐

  1. mysql的锁--行锁,表锁,乐观锁,悲观锁

    一 引言--为什么mysql提供了锁 最近看到了mysql有行锁和表锁两个概念,越想越疑惑.为什么mysql要提供锁机制,而且这种机制不是一个摆设,还有很多人在用.在现代数据库里几乎有事务机制,aci ...

  2. Android应用中使用Popupmenu

    最终效果: 页面布局: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns: ...

  3. 表格table常见的边框设置和初步的立体效果

    做网页时经常会遇到表格,常见的表格如下: <style type="text/css"> .tbtest0 { width:500px; height:200px; b ...

  4. .net中div置于顶层+iframe

    aspx代码: <td>  <asp:Button ID="BtnDownPPT" runat="server" OnClientClick= ...

  5. java 面对对象(抽象 继承 接口 多态)

    什么是继承? 多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需再定义这些属性和行为,只要继承那个类即可. 多个类可以称为子类,单独这个类称为父类.超类或者基类. 子类可以直接 ...

  6. Jboss基础及简单的应用

    初学Jboss,对于Jboss的基础认识以及配置做一些记录 Jboss基础: JBoss是什么–基于J2EE的应用服务器–开放源代码–JBoss核心服务不包括支持servlet/JSP的WEB容器,一 ...

  7. Unicode的解救方案 - Windows程序设计(SDK)002

    Unicode的解救方案 让编程改变世界 Change the world by program 内容节选: 早期的Windows也是使用ASCII字符集,ASCII好处多多,但ASCII的第一个字母 ...

  8. c语言中的结构体指针类型的cast

    1.我们在c语言中会经常碰到强制类型转换. 在这,我介绍一种结构pointer类型转换,但是有前提(有点类似于c++中的继承中的子父对象的cast). 简单的介绍一下: 首先我们要知道一个结构的指针, ...

  9. 这样就算会了PHP么?-10

    关于基本的文件读写内容: <?php echo "readfile function:<br>"; readfile("tm.txt"); e ...

  10. keil or c51 汇编调用c语言函数 容易忽视的问题

    最近,在用keil 写一个小程序时,想实践一下从汇编调用 C语言函数,我们都知道C语言调用汇编函数讨论得较多,但反过来,从汇编中调用C语言的函数未见深入分析:在开始的时候,还是忽视了一个问题,就是对现 ...