参考自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相关推荐

  1. Android中调用另一个Activity并返回结果-以模拟选择头像功能为例

    场景 Android中点击按钮启动另一个Activity以及Activity之间传值: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/detail ...

  2. java向另一activity输入_Android中调用另一个Activity并返回结果-以模拟选择头像功能为例...

    场景 Android中点击按钮启动另一个Activity以及Activity之间传值: 在上面启动Activity和传值之后,怎样获取Acitvity的返回值.下面示例实现点击选择头像按钮,跳转到头像 ...

  3. BroadcastReceiver 启动activity(在activity之外启动一个activity)

    **  * 在BroadcastReceiver中启动Activity的问题  *  * 如果在BroadcastReceiver的onReceive()方法中如下启动一个Activity  * In ...

  4. [安卓基础] 006.打开另一个Activity

    打开另一个Activity 这篇文章你会学到的东西: 1.如何给按钮添加响应事件. 2.创建一个Intent. 3.创建一个新的Activity. 4.点击按钮,打开另一个Activity. 5.接收 ...

  5. Android 从一个Activity跳转到另一个Activity获取第二个Activity的返回值

    在做安卓开发的过程中,经常会在两个Activity之间传递数据,从第一个Activity传递数据到第二个Activity是很简单的,在第一个Activity中这样写代码 Intent intent = ...

  6. [Android1.5]打开多个Activity,返回到第一个Activity的问题

    前言 Android项目中一旦涉及到登录就基本会遇到这个问题:打开多个Activity之后再登录超时的情况下如何才能跳转到登录界面,参见帖子这里.暂时没有完美解决方案,本文是对该帖子的补充说明: 声明 ...

  7. 【Android】12.3 在当前Activity中获取另一个Activity的返回值

    分类:C#.Android.VS2015: 创建日期:2016-02-23 一.简介 在上一节的示例中,通过StartActivity(Intent)方法启动另一个Activity后,这两个Activ ...

  8. android之隐示意图跳转启动另一个activity

    主面板布局:layout/activity_main.xml <LinearLayout xmlns:android="http://schemas.android.com/apk/r ...

  9. Android官方开发文档Training系列课程中文版:管理Activity的生命周期之启动一个Activity

    原文地址 : http://android.xsoftlab.net/training/basics/activity-lifecycle/index.html 导言 用户通过导航退出或者返回应用的时 ...

最新文章

  1. 零代价修复海量服务器的内核缺陷——UCloud内核热补丁技术揭秘
  2. PHP输出结构类型变量输出,php输出形式实例整理
  3. [Hive_6] Hive 的内置函数应用
  4. 深圳职业技术学院计算机工程学院江学锋,毕业论文附属材料07013505刘丽.doc
  5. 【BIOS大全】释义+设置+精解+释疑————玩转电脑必备工具帖(8)
  6. 腾讯云搭svn服务器,腾讯云使用笔记二: 安装svn服务器及web同步
  7. java.lang.IllegalStateException: Not connected to server
  8. sparksql保存数据常见操作
  9. jmeter服务器性能资源监控部署
  10. C#中double.tostring()的用法
  11. 线性表、顺序表和链表,你还分不清?
  12. 图书管理系统(说明文档与相关代码)
  13. 列表: ul/ol/dl - bootStrap4常用CSS笔记
  14. 查看电脑的s/n序列号信息方式
  15. java文本框失去焦点事件,jQuery 文本框得失焦点的简单实例
  16. 代码管理 阿里云 云效 设置云效 SSH 公钥 下载代码到本地配置SSH
  17. debian无法使用ifconfig
  18. Numpy入门[9]——数组与字符串的转换
  19. vue项目storage本地存储
  20. php中die是什么意思,PHP中die()和exit()有什么区别?

热门文章

  1. OpenSSH升级安装步骤(redhat)
  2. 虚方法、重写方法和抽象方法[转载]
  3. 使用librosa计算pcen
  4. pytorch移动端教程 Java调用libtorch
  5. 从源码分析DEARGUI之add_window
  6. 想成为牛逼程序员? 先数数编程语言之父们的头发
  7. Netty之SimpleChannelInboundHandler
  8. struts2的核心和工作原理
  9. React文档(十四)深入JSX
  10. 个人网站搭建---godaddy域名+freewebhostingarea免费空间