原创内容,转载请注明出处
Activity是Android的四大控件之一,它是直接和用户打交道的界面,既然作为界面,那么界面和界面之间将会有一定的通讯,通讯则代表数据的传输。Activity之间的跳转通过Intent类完成,Intent类在跳转过程中还可携带数据。
修改activity_main.xml布局文件,添加一个文本框和发送按钮,点击发送按钮时,会将文本框的信息传到FirstActivity,并完成跳转。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="com.cygoat.myapp.MainActivity" > <EditText android:id="@+id/message" android:layout_width="wrap_content" android:layout_height="wrap_content" android:hint="@string/hello_world" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/send_button" android:onClick="sendMessage"/> </LinearLayout>
修改MainActivity.java,添加sendMessage(View)方法,当发送按钮点击时,会调用该方法。该方法会将文本框的消息保存到Intent对象中,并通过Intent实例跳转。代码如下
package com.cygoat.myapp; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.widget.EditText; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { // Handle action bar item clicks here. The action bar will // automatically handle clicks on the Home/Up button, so long // as you specify a parent activity in AndroidManifest.xml. int id = item.getItemId(); if (id == R.id.action_settings) { return true; } return super.onOptionsItemSelected(item); } public void sendMessage(View view){ Intent intent = new Intent(this,FirstActivity.class); EditText text = (EditText) findViewById(R.id.message); intent.putExtra("message", text.getText().toString()); startActivity(intent); } }
创建activity_first.xml布局,用来展示接收的消息,内容如下
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="com.cygoat.myapp.FirstActivity" > <TextView android:id="@+id/result" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/hello_world" /> </RelativeLayout>
创建FirstActivity.java类,该类接收消息并展示。代码如下
package com.cygoat.myapp; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import android.widget.TextView; public class FirstActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_first); Intent intent = getIntent(); String message = intent.getStringExtra("message"); TextView textView = (TextView) findViewById(R.id.result); textView.setText("内容为:"+message); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.first, menu); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { // Handle action bar item clicks here. The action bar will // automatically handle clicks on the Home/Up button, so long // as you specify a parent activity in AndroidManifest.xml. int id = item.getItemId(); if (id == R.id.action_settings) { return true; } return super.onOptionsItemSelected(item); } }
测试如下
源代码如附件
相关推荐
Activity之间通信及其生命周期变化,及回传参数等基础知识点
安卓Android源码——(Activity跳转与操作).zip
安卓Android源码——(Activity跳转与操作).rar
免费资源可以看博客中《Activity之间的数据回传》进行学习 Android开发 猴子摘桃小项目——学习Activity之间的数据回传
android入门级视频:Android基本组件介绍之Android应用的灵魂——Intent和Activity介绍与实例
Android学习笔记(四)Android 中Activity页面的跳转及传值 Android学习笔记(五)——Toast提示、Dialog对话框、Menu菜单 Android学习笔记(六)——自定义ListView布局+AsyncTask异步任务 Android学习笔记(七)...
Android学习笔记(四)Android 中Activity页面的跳转及传值 Android学习笔记(五)——Toast提示、Dialog对话框、Menu菜单 Android学习笔记(六)——自定义ListView布局+AsyncTask异步任务 Android学习笔记(七)...
应用内Activity的跳转方式 一、通过显式意图跳转,如字面意思一样,跳转的目的地是可以明确看到的 二、通过隐式意图跳转,这种方式的跳转需要我们在AndroidManifest.xml文件中为目的Activity配置Action和Category ...
该工程为网上找到的不错的资源,我仅是自己跟着做了一次,以后找...执行为主Activity中点击按钮扫描,跳转到扫描界面,扫描结束后finish自动调用主Activity中的onActivityResult()方法。在该方法中可做自己想做的事。
Android 页面之间跳转——显示意图跳转 利用Intent进行跳转 Intent方法进行页面跳转适用于两个Activity之间的跳转,按返回键可以直接返回到前一个页面。 使用时需要注意在Manifest.xml文件中注册Activity activity_...
(2)多个Activity之间的跳转:通过Intent类实现屏幕之间的跳转(包括没有参数关系 和需要传递参数两种情况)。 (3)两个Activity之间进行数据交换:startActivity() 只有Intent一个参数;public void ...
为了实现从Fragment跳转到其他Activity,下面需要创建以下文件: 第一步:简单编写布局文件fragment_activity.xml和抽象类TemplateFragmentActivity.java代码如下: fragment_activity.xml <?xml version=1.0 ...
Android学习笔记(四)Android 中Activity页面的跳转及传值 Android学习笔记(五)——Toast提示、Dialog对话框、Menu菜单 Android学习笔记(六)——自定义ListView布局+AsyncTask异步任务 Android学习笔记(七)...
Android学习笔记(四)Android 中Activity页面的跳转及传值 Android学习笔记(五)——Toast提示、Dialog对话框、Menu菜单 Android学习笔记(六)——自定义ListView布局+AsyncTask异步任务 Android学习笔记(七)...
第2章 工欲善其事 必先利其器——搭建Android开发环境 2.1 开发Android应用前的准备 2.1.1 Android开发系统要求 2.1.2 Android软件开发包 2.1.3 其他注意事项 2.2 Windows开发环境搭建 2.2.1 JDK、Eclipse、Android...
第2章 工欲善其事 必先利其器——搭建android开发环境 7 2.1 开发android应用前的准备 7 2.1.1 android开发系统要求 7 2.1.2 android软件开发包 7 .2.1.3 其他注意事项 8 2.2 windows开发环境搭建...
第2章 工欲善其事 必先利其器——搭建Android开发环境 2.1 开发Android应用前的准备 2.1.1 Android开发系统要求 2.1.2 Android软件开发包 2.1.3 其他注意事项 2.2 Windows开发环境搭建 2.2.1 JDK、Eclipse、Android...
11.2.3 华丽转身——实现多页面跳转 11.2.4 始终为用户做好服务——增加Service 11.2.5 细节决定成败——完善应用细节 11.3 成功就在眼前——应用测试和发布 11.3.1只欠东风——应用测试 11.3.2 可以赚钱了——发布...
第2章 工欲善其事 必先利其器——搭建Android开发环境 2.1 开发Android应用前的准备 2.1.1 Android开发系统要求 2.1.2 Android软件开发包 2.1.3 其他注意事项 2.2 Windows开发环境搭建 2.2.1 JDK、Eclipse、Android...
第2章 工欲善其事 必先利其器——搭建Android开发环境 7 2.1 开发Android应用前的准备 7 2.1.1 Android开发系统要求 7 2.1.2 Android软件开发包 7 .2.1.3 其他注意事项 8 2.2 Windows开发环境搭建...