首页 > 编程知识 正文

android studio activity跳转(安卓跳转到另一个activity)

时间:2023-05-06 09:36:17 阅读:71619 作者:3633

一.显式调用方法

方法1 :

Intent intent=new Intent (此类,要跳转的类); //intent intent=new intent (main activity.this,JumpToActivity.class );

开始活动(intent;

方法2 :

Intent intent2=new Intent (;

intent2.setClass (本班,要跳的班); //intent2. setclass (main activity.this,JumpToActivity.class );

开始活动(intent 2;

方法3 ()此方法可用于打开其他APP应用程序。)。

Intent intent2=new Intent (;

intent2. set component (newcomponentname (main activity.this,JumpToActivity.class );

开始活动(intent 2;

组件、目标组件的包或类名(完整类名) :

使用component进行匹配时,一般采用以下形式。

intent.set component (newcomponentname (getapplicationcontext ),JumpToActivity.class );

intent.set component (newcomponentname (getapplicationcontext )、' com.liujc.test.JumpToActivity ' );

intent.set component (newcomponentname (com.liujc.test ),com.liujc.test.JumpToActivity ) );

2 :隐式调用方法

在action中跳转:

Intent intent=new Intent (;

intent.set action (con.liujc.test.jump );

开始活动(intent;

跳转到的Activity必须在AndroidManifest.xml中设置action:

使用方案跳转协议跳转:

Android scheme是一种页面内跳转协议,是一种非常好的实现机制,通过定义自己的scheme协议可以轻松跳转到app中的每个页面,在scheme协议中,服务器可以app跳转到该页面可以通过通知栏的消息自定义跳转页面,可以通过H5页跳转页面等。

URL方案协议格式:

liujc ://goods 33608080/goods详细信息? goodsId=20170112

上面的路径方案、主机、端口、路径和查询都包括:

liujc表示此方案协议名称

goods表示方案作用于哪个地址域

goodsDetail表示方案指定的页面

goodsId表示传递的参数

8080表示此路径的端口号

使用URL方案:

在AndroidManifest.xml中为标记添加方案:

Android : name='.goodsdetailactivity '

Android : theme=' @ style/app theme '

获取方案跳转的参数:

Uri uri=getIntent ().getData );

if(uri!=空) {

//完整的url信息

String url=uri.toString (;

log.e(tag,' url: ' uri );

//方案部分

String scheme=uri.getScheme (;

log.e(tag,'方案: '方案);

//host部分

String host=uri.getHost (;

log.e(tag,' host: ' host );

//port部分

int port=uri.getPort (;

log.e(tag,' host: ' port );

//访问能力

String path=uri.getPath (;

log.e(tag,' path: ' path );

listpathsegments=uri.getpath segments (;

//查询部分

String query=uri.getQuery (;

log.e(tag,' query: ' query );

//获取指定的参数值

stringgoodsid=uri.get query parameter (goods id );

log.e(tag,' goodsId: ' goodsId );

}

呼叫方式:

网页: (系统附带浏览器或谷歌浏览器) ) ) ) )。

打开商品详细信息

本地呼叫:

intent intent=new intent (intent.action _ view,uri.parse (liujc ://goods 33608080/gods详细信息? goodsId=20170112 ' );

开始活动(intent;

确定一个方案是否有效,如果有效,则启动:

打包管理器=getpackagemanager (;

intent intent=new intent (intent.action _ view,uri.parse (liujc ://goods 33608080/gods详细信息? goodsId=20170112 ' );

list activities=package manager.queryintentactivities (intent,0 );

布林is valid=! activities.isEmpty (;

if(isvalid ) {

开始活动(intent;

}

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。