调用另一个Activity
参考自Google官方文档Traning/Getting Started/Building a simple user interface, Startinganother activity,http://developer.android.com/training/basics/firstapp/building-ui.html
1、创建主Activity
使用Eclipse新建项目MyFirstApp,UI布局如下:
<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"android:paddingBottom="@dimen/activity_vertical_margin"android:paddingLeft="@dimen/activity_horizontal_margin"android:paddingRight="@dimen/activity_horizontal_margin"android:paddingTop="@dimen/activity_vertical_margin"android:orientation="horizontal"tools:context=".MainActivity"><EditTextandroid:id="@+id/et_message"android:layout_height="wrap_content"android:layout_width="0dp"android:layout_weight="1"android:hint="@string/input_here"/><Buttonandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="@string/click"android:onClick="sendMessage"/></LinearLayout>
注意通过权重来分配尺寸的方式
组件1:
android:layout_width="0dp"
android:layout_weight="1"
组件2:
android:layout_width="wrap_content"
2、在主类中指定onclick所对应的sendMessage方法
package com.lujinhong.androidtraningmyfirstapp;import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.widget.EditText;public class MainActivity extends Activity{public final static String EXTRA_MESSAGE="com.lujinhong.myfirstapp.MESSAGE";@Overrideprotected void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);}@Overridepublic boolean onCreateOptionsMenu(Menu menu){// Inflate themenu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.main, menu);return true;}public void sendMessage(View v){EditText et_message=(EditText)this.findViewById(R.id.et_message);String message= et_message.getText().toString().trim();Intent intent= new Intent(this,DisplayMessageActivity.class);intent.putExtra(EXTRA_MESSAGE, message);this.startActivity(intent);}}
(1)关于intent
An Intent isan object that provides runtime binding between separate components (such astwo activities). TheIntent representsan app’s "intent to do something." You can use intents for a widevariety of tasks, but most often they’re used to startanother activity.
(2)调用另一个activity的步骤:
l 首先取得editText中的文字
EditText et_message = (EditText) this.findViewById(R.id.et_message);
String message = et_message.getText().toString().trim();
l 然后创建一下intent,并把文字作为K-V形式保存到intent中
Intent intent= new Intent(this,DisplayMessageActivity.class);intent.putExtra(EXTRA_MESSAGE, message);
创建intent时,通过一个类名,指定调用哪个类文件。
l 最后启动一个新的activity.
this.startActivity(intent);
3、显示另一个Activity
package com.lujinhong.androidtraningmyfirstapp;import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.widget.TextView;public class DisplayMessageActivityextends Activity{@Overrideprotected void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_display_message);// Get the messagefrom the intentIntent intent= getIntent();String message= intent.getStringExtra(MainActivity.EXTRA_MESSAGE);// Create the textviewTextView textView=new TextView(this);textView.setTextSize(40);textView.setText(message);// Set the textview as the activity layoutsetContentView(textView);}@Overridepublic boolean onCreateOptionsMenu(Menu menu){// Inflate themenu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.display_message, menu);return true;}}
转载于:https://www.cnblogs.com/eaglegeek/p/4557993.html
调用另一个Activity相关推荐
- Android中调用另一个Activity并返回结果-以模拟选择头像功能为例
场景 Android中点击按钮启动另一个Activity以及Activity之间传值: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/detail ...
- java向另一activity输入_Android中调用另一个Activity并返回结果-以模拟选择头像功能为例...
场景 Android中点击按钮启动另一个Activity以及Activity之间传值: 在上面启动Activity和传值之后,怎样获取Acitvity的返回值.下面示例实现点击选择头像按钮,跳转到头像 ...
- BroadcastReceiver 启动activity(在activity之外启动一个activity)
** * 在BroadcastReceiver中启动Activity的问题 * * 如果在BroadcastReceiver的onReceive()方法中如下启动一个Activity * In ...
- [安卓基础] 006.打开另一个Activity
打开另一个Activity 这篇文章你会学到的东西: 1.如何给按钮添加响应事件. 2.创建一个Intent. 3.创建一个新的Activity. 4.点击按钮,打开另一个Activity. 5.接收 ...
- Android 从一个Activity跳转到另一个Activity获取第二个Activity的返回值
在做安卓开发的过程中,经常会在两个Activity之间传递数据,从第一个Activity传递数据到第二个Activity是很简单的,在第一个Activity中这样写代码 Intent intent = ...
- [Android1.5]打开多个Activity,返回到第一个Activity的问题
前言 Android项目中一旦涉及到登录就基本会遇到这个问题:打开多个Activity之后再登录超时的情况下如何才能跳转到登录界面,参见帖子这里.暂时没有完美解决方案,本文是对该帖子的补充说明: 声明 ...
- 【Android】12.3 在当前Activity中获取另一个Activity的返回值
分类:C#.Android.VS2015: 创建日期:2016-02-23 一.简介 在上一节的示例中,通过StartActivity(Intent)方法启动另一个Activity后,这两个Activ ...
- android之隐示意图跳转启动另一个activity
主面板布局:layout/activity_main.xml <LinearLayout xmlns:android="http://schemas.android.com/apk/r ...
- Android官方开发文档Training系列课程中文版:管理Activity的生命周期之启动一个Activity
原文地址 : http://android.xsoftlab.net/training/basics/activity-lifecycle/index.html 导言 用户通过导航退出或者返回应用的时 ...
最新文章
- 零代价修复海量服务器的内核缺陷——UCloud内核热补丁技术揭秘
- PHP输出结构类型变量输出,php输出形式实例整理
- [Hive_6] Hive 的内置函数应用
- 深圳职业技术学院计算机工程学院江学锋,毕业论文附属材料07013505刘丽.doc
- 【BIOS大全】释义+设置+精解+释疑————玩转电脑必备工具帖(8)
- 腾讯云搭svn服务器,腾讯云使用笔记二: 安装svn服务器及web同步
- java.lang.IllegalStateException: Not connected to server
- sparksql保存数据常见操作
- jmeter服务器性能资源监控部署
- C#中double.tostring()的用法
- 线性表、顺序表和链表,你还分不清?
- 图书管理系统(说明文档与相关代码)
- 列表: ul/ol/dl - bootStrap4常用CSS笔记
- 查看电脑的s/n序列号信息方式
- java文本框失去焦点事件,jQuery 文本框得失焦点的简单实例
- 代码管理 阿里云 云效 设置云效 SSH 公钥 下载代码到本地配置SSH
- debian无法使用ifconfig
- Numpy入门[9]——数组与字符串的转换
- vue项目storage本地存储
- php中die是什么意思,PHP中die()和exit()有什么区别?