Android编程中Intent实现页面跳转功能详解

Android编程中Intent实现页面跳转功能详解,第1张

概述本文实例讲述了Android编程中Intent实现页面跳转功能。分享给大家供大家参考,具体如下:

本文实例讲述了AndroID编程中Intent实现页面跳转功能。分享给大家供大家参考,具体如下:

安卓四大组件:Activity、Service、broadcast Receiver、Content ProvIDer

Intent实现页面之间跳转

1、无返回值

startActivity(intent)

2、有返回值

startActivityForResult(intent,requestCode);onActivityResult(int requestCode,int resultCode,Intent data)setResult(resultCode,data);

FActivity.java

package com.example.hello;import androID.app.Activity;import androID.content.Context;import androID.content.Intent;import androID.os.Bundle;import androID.vIEw.VIEw;import androID.vIEw.VIEw.OnClickListener;import androID.Widget.button;import androID.Widget.TextVIEw;public class FActivity extends Activity{  private button bt1;  private Context mContext;  private button bt2;  private TextVIEw tv;  @OverrIDe  protected voID onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentVIEw(R.layout.factivity);    /*     * 通过点击bt1实现页面之间的跳转     * 1.startActivity来实现跳转     * 1>初始换Intent     */    mContext = this;    bt1 = (button) findVIEwByID(R.ID.button1_first);    bt2 = (button) findVIEwByID(R.ID.button2_second);    tv = (TextVIEw) findVIEwByID(R.ID.textVIEw1);    //注册点击事件    bt1.setonClickListener(new OnClickListener() {      @OverrIDe      public voID onClick(VIEw v) {        /**         * 第一个参数,上下文对象this         * 第二个参数,目标文件         */        Intent intent = new Intent(mContext,SActivity.class);        startActivity(intent);      }    });    /*     * 通过startActivityForResult     * 第二个参数是请求的一个标识     */    bt2.setonClickListener(new OnClickListener() {      @OverrIDe      public voID onClick(VIEw v) {        Intent intent = new Intent(mContext,SActivity.class);        startActivityForResult(intent,1);      }    });  }  /*   * 通过startActivityForResult 跳转,接受返回数据的方法   * requestCode:请求标识   * resultCode:第二个页面返回的标识   * data 第二个页面回传的数据   */  @OverrIDe  protected voID onActivityResult(int requestCode,Intent data) {    super.onActivityResult(requestCode,resultCode,data);    if (requestCode == 1 && resultCode == 2) {      String content = data.getStringExtra("data");      tv.setText(content);    }  }}

factivity.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" >  <button    androID:ID="@+ID/button1_first"    androID:layout_wIDth="match_parent"    androID:layout_height="wrap_content"    androID:text="第一种启动方式" />  <button    androID:ID="@+ID/button2_second"    androID:layout_wIDth="match_parent"    androID:layout_height="wrap_content"    androID:text="第二种启动方式" />  <TextVIEw    androID:ID="@+ID/textVIEw1"    androID:layout_wIDth="match_parent"    androID:layout_height="wrap_content"    androID:text="把第二个页面回传的数据显示出来" /></linearLayout>

SActivity.java

package com.example.hello;import androID.app.Activity;import androID.content.Intent;import androID.os.Bundle;import androID.vIEw.VIEw;import androID.vIEw.VIEw.OnClickListener;import androID.Widget.button;public class SActivity extends Activity{  private button bt;  private String content = "你好";  @OverrIDe  protected voID onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentVIEw(R.layout.sactivity);    /*     * 第二个页面什么时候回传数据给第一个页面     * 回传到第一个页面的,实际上是一个Intent对象     */    bt = (button) findVIEwByID(R.ID.button1);    bt.setonClickListener(new OnClickListener() {      @OverrIDe      public voID onClick(VIEw v) {        Intent data = new Intent();        data.putExtra("data",content);        setResult(2,data);        //结束当前页面        finish();      }    });  }}

sactivity.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" >  <button    androID:ID="@+ID/button1"    androID:layout_wIDth="match_parent"    androID:layout_height="wrap_content"    androID:text="button" /></linearLayout>

AndroIDManifest.xml

<?xml version="1.0" enCoding="utf-8"?><manifest xmlns:androID="http://schemas.androID.com/apk/res/androID"  package="com.example.hello"  androID:versionCode="1"  androID:versionname="1.0" >  <uses-sdk    androID:minSdkVersion="8"    androID:targetSdkVersion="21" />  <application    androID:allowBackup="true"    androID:icon="@drawable/ic_launcher"    androID:label="@string/app_name"    androID:theme="@style/Apptheme" >    <activity      androID:name=".MainActivity"      androID:label="@string/app_name" >    </activity>    <activity      androID:name=".FActivity"      androID:label="@string/app_name" >      <!-- 首启动项 -->      <intent-filter>        <action androID:name="androID.intent.action.MAIN" />        <category androID:name="androID.intent.category.LAUNCHER" />      </intent-filter>    </activity>    <activity      androID:name=".SActivity"      androID:label="@string/app_name" >    </activity>  </application></manifest>

用浏览器打开网页

Uri uri = Uri.parse("http://www.baIDu.com");Intent intent = new Intent(Intent.ACTION_VIEW,uri);startActivity(intent);

更多关于AndroID相关内容感兴趣的读者可查看本站专题:《Android图形与图像处理技巧总结》、《Android开发入门与进阶教程》、《Android调试技巧与常见问题解决方法汇总》、《Android基本组件用法总结》、《Android视图View技巧总结》、《Android布局layout技巧总结》及《Android控件用法总结》

希望本文所述对大家AndroID程序设计有所帮助。

总结

以上是内存溢出为你收集整理的Android编程中Intent实现页面跳转功能详解全部内容,希望文章能够帮你解决Android编程中Intent实现页面跳转功能详解所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1144970.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-31
下一篇 2022-05-31

发表评论

登录后才能评论

评论列表(0条)

保存