如何完成屏幕之间的交互(就是从一个屏幕跳到另一个屏幕去),在android中我们可以使用intent(意图)组件来完成,代表一个应用想去做什么事,你可以用它做各种的任务,不过大部分的时候他们被用来启动另一个Activity。
1.在布局文件中设置android:onClick=“sendMessage”
sendMessage就是当用户点击你屏幕控件所触发的方法。
2.在相应的Activity类中添加相应的方法
public void sendMessage(View view){
//相应的操作
}
3.为了能让系统能够将这个方法与在android:onClick属性中提供的方法名字匹配,他们的名字必须一致,特别是方法必须满足以下条件:
公共的
没有返回值
有一个唯一的视图(View)参数(这个就是被点击的视图)
Build an Intent 构建一个Intent:
在sendMessage()方法中创建 Intent intent = new Intent(this, antherActivity.class);
在Intent的构造函数中有两个参数:第一个参数是Context(上下文)一个是系统所需要传递的class对象。
而却一个intent不仅允许你启动到另一个Activity,同时也可以传递数据包到另一个Activity里。
Sending an intent to other apps-发送intent(意图)到其他app(应用)
Intent(意图)可以传递各种各样的以键值对形式出现的集合,可以称它为extras,putExtra()方法用字符窜作为它的key,第二个参数作为它的值为了在下一个Activity中获取extra(附加的)数据,你应该定义一个公共常量作为key(键),ok,在MyFirstActivity类的顶部定义一个名为EXTRA_MESSAGE的常量:
public class MyFirstActivity extends Activity {
public final static String EXTRA_MESSAGE = "com.example.myapp.MESSAGE";
...
}
/** 当用户点击Send按钮时调用 */
public void sendMessage(View view) {
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);
startActivity(intent);
}
Start the Second Activity-启动第二个Activity
Create the Second Activity-创建第二个Activity
public class DisplayMessageActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
}
Add it to the manifest-将Activity加入manifest(清单)文件
<application ... >
<activity android:name="com.example.myapp.DisplayMessageActivity" />
...
</application>
Display the Message-显示信息
在屏幕上显示信息,创建一个TextView部件,并且使用setText()设置它的值,然后通过setContentView()方法将TextView作为root(根)视图添加到Activity的布局。
DisplayMessageActivity完整的onCreate()方法现在看起来如下:

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

// 从intent中获取信息
Intent intent = getIntent();
String message = intent.getStringExtra(MyFirstActivity.EXTRA_MESSAGE);

// 创建TextView对象
TextView textView = new TextView(this);

textView.setTextSize(40);

textView.setText(message);

setContentView(textView);
}



更多相关文章

  1. 关于Android的一些设计
  2. Android(安卓)设备root 原理及方法
  3. Android使用JNI实现Java与C之间传递数据
  4. Qt on Android:应用截屏
  5. Android布局优化之merge(二)
  6. Android基础 : Android(安卓)Service
  7. Android(安卓)Service生命周期及用法
  8. 浅谈Java中Collections.sort对List排序的两种方法
  9. Python list sort方法的具体使用

随机推荐

  1. java.lang.Exception: 密钥库文件不存在:
  2. 解决overlaps the location of another p
  3. 加快Android(安卓)Studio/Gradle构建速度
  4. Android(安卓)NDK 运行错误:java.lang.Uns
  5. Android锁屏API-DevicePolicyManager介绍
  6. android“设置”里的版本号
  7. Android持续集成
  8. Android环境配置
  9. Android中ExpandableListView控件基本使
  10. Android内置的Action