activity启动的两种方
来源:互联网 发布:知乎海尔收购通用电器 编辑:程序博客网 时间:2024/06/04 19:06
activity启动
- 直接启动(只是简单的点击按钮从一个Activity到另一个Activity)
- 这是MainActivity类,由它启动ActivityTwo类
import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.view.View;import android.widget.Button;public class MainActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);//定义一个intent对象,目标Activity为ActivityTwofinal Intent intent = new Intent(this,ActivityTwo.class);//定义一个Button,点击进入ActivityTwoButton bt = (Button) findViewById(R.id.button1);//定义点击事件bt.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View arg0) {// TODO Auto-generated method stub//调用startActivity方法startActivity(intent);}});}}
- 这是MainActivity类的xml配置文件
<TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentTop="true" android:layout_marginTop="108dp" android:text="你现在位于MainActivity类" /> <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignRight="@+id/textView1" android:layout_below="@+id/textView1" android:layout_marginTop="116dp" android:text="点我啊" />
- 这是ActivityTwo类
import android.app.Activity;import android.os.Bundle;public class ActivityTwo extends Activity{protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_two);}}
- 这是ActivityTwo类的xml配置文件
<TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="62dp" android:layout_weight="1" android:text="欢迎来到ActivityTwo" />
- 要注意在AndroidManifest文件的<application>元素里加入
<activity android:name="com.example.activtitytest.ActivityTwo"> </activity>2.带返回值的启动(从第一个Activity点击按钮等候到第二个Activity,点击第二个Activity的按钮返回第一个Activity,(带数据的返回哦))方法的调用请看Intents and Intent Filters详解
- MainActivity类
import android.annotation.SuppressLint;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.view.View;import android.widget.Button;import android.widget.TextView;import android.widget.Toast;@SuppressLint("ResourceAsColor")public class MainActivity extends Activity {//定义常量request_Codeprivate final static int request_Code = 1;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);//定义按钮final Intent intent = new Intent(MainActivity.this,SecondActivity.class);Button bt = (Button) findViewById(R.id.button1);//定义点击按钮事件bt.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View arg0) {// 调用startActivityForResult方法startActivityForResult(intent, request_Code);}});}@Override//处理返回数据protected void onActivityResult(int requestCode, int resultCode, Intent data) {// TODO Auto-generated method stub//当请求码(requstCode)与结果码(resultCode)相匹配时处理数据if(requestCode == request_Code && resultCode == RESULT_OK){if(data != null){String info = data.getData().toString();//定义TextViewTextView tv = (TextView) findViewById(R.id.textView1);//设置TextView的文本tv.setText(info);}else{Toast.makeText(this, "无返回任何内容", Toast.LENGTH_SHORT).show();}}}}
- MainActivity类的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=".MainActivity" > <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="现在你在MainActivity" /> <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/textView1" android:layout_centerHorizontal="true" android:layout_marginTop="126dp" android:text="点击我将去SecondActivity" /></RelativeLayout>
- SecondActivity类
import android.app.Activity;import android.content.Intent;import android.net.Uri;import android.os.Bundle;import android.view.View;import android.widget.Button;public class SecondActivity extends Activity{@Overrideprotected void onCreate(Bundle savedInstanceState) {// TODO Auto-generated method stubsuper.onCreate(savedInstanceState);setContentView(R.layout.activity_second);//定义按钮Button bt = (Button) findViewById(R.id.button1);//定义点击按钮事件bt.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubIntent data = new Intent();String str = "带我会MainActivity吧";//将值放入Intent对象中data.setData(Uri.parse(str));//RESULT_OK为系统定义的setResult(RESULT_OK,data);//关闭该Activityfinish();}});}}
- secondActivity类的xml配置文件
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <TextView android:id="@+id/textView1" android:layout_width="184dp" android:layout_height="wrap_content" android:text="欢迎来到SecondActivity" /> <Button android:id="@+id/button1" android:layout_width="194dp" android:layout_height="wrap_content" android:text="点我回到MainActivity,带数据了哦" /></LinearLayout>
- 别忘了在<application>元素里加入
<activity android:name="com.example.activitytest.SecondActivity"> </activity>
0 0
- activity启动的两种方
- Activity的启动流程
- Activity的启动
- Activity的启动
- activity的启动模式
- Activity的启动模式
- Activity的启动方式
- Activity的启动模式
- Activity的启动模式
- Activity的启动模式
- Activity的启动流程
- Activity的启动流程
- Activity的启动模式
- activity的启动模式
- Activity的启动模式
- Activity的启动模式
- Activity的启动模式
- Activity 的启动模式
- 单件 singleton 唯一的对象实例
- loadrunner 多组脚本分别设置用户数
- 黑马程序员_java_String类
- GE Smallworld开发(003dxf文件导入导出问题)
- android中socket连接不到服务器导致卡机处理
- activity启动的两种方
- 你多少分的呢从vs苍南县变成现实
- 玩转Ubuntu----Ubuntu的安装
- manifest学习网站总汇
- 繁忙的生活
- Android开发之多媒体——显示手机存储的图片
- 关于socket阻塞与非阻塞情况下的recv、send、read、write返回值及用setsockopt()来控制recv()与send()的超时
- 转:<context:annotation-config/>
- YY与新东方的较量:在线教育持续升温