欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Android Activity活動頁面跳轉(zhuǎn)與頁面?zhèn)髦?/h1>
 更新時(shí)間:2021年12月10日 10:26:12   作者:曲幽  
大家好,本篇文章主要講的是Android Activity活動頁面跳轉(zhuǎn)與頁面?zhèn)髦担信d趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽

概述

Android開發(fā)少不了的就是頁面之間的跳轉(zhuǎn),或者想要呼叫打開其他應(yīng)用等

Intent

Intent是Android程序中各組件之間進(jìn)行交互的一種重要方式,不僅可以指明當(dāng)前組件想要執(zhí)行的運(yùn)作,還可以在不同組件之間傳遞數(shù)據(jù)。

顯示Intent啟動

第一個參數(shù)為啟動活動的上下文

第二個參數(shù)為想要啟動的目標(biāo)活動

Intent intent = new Intent(MainActivity.this, TabHostActivity.class);
startActivity(intent);

通過這個構(gòu)造函數(shù)就可以構(gòu)建出Intent的“意圖”,且目標(biāo)明確,所以為顯示啟動

隱式Intent啟動

根據(jù) <intent-filter> 中設(shè)定的 action 和 category 來啟動,且只有<action>和<category>中的內(nèi)容同時(shí)能夠匹配上時(shí),這個活動才能響應(yīng)。

Intent intent = new Intent("com.zqunyan.zgstudy.ACTION_START");
intent.addCategory("com.zqunyan.zgstudy.MY_CATEGORY");
startActivity(intent);

如果 <intent-filter> 中的 category 值是 android.intent.category.DEFAULT 則可以省略addCategory(),因?yàn)镈EFAULT是一種默認(rèn)的 category,在調(diào)用 startActivity() 方法的時(shí)候會自動添加到 intent 中,即

Intent intent = new Intent("com.zqunyan.zgstudy.ACTION_START");
startActivity(intent);

啟動其他程序

使用隱式 Intent,我們不僅可以啟動自己程序內(nèi)的活動,還可以啟動其他程序的活動。

網(wǎng)頁瀏覽

action指定為Intent.ACTION_VIEW,其常量值為 android.intent.action.VIEW

然后將網(wǎng)頁地址轉(zhuǎn)換成 Uri 對象傳遞進(jìn)去

Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse("https://www.baidu.com"));
startActivity(intent);

撥號界面

action指定為 Intent.ACTION_DIAL

Intent intent = new Intent(Intent.ACTION_DIAL);
intent.setData(Uri.parse("tel:10086"));
startActivity(intent);

根據(jù)包名打開軟件

借助androdi內(nèi)部的 PackageManager 來根據(jù)包名取得應(yīng)用的啟動頁面

Intent intent = getPackageManager().getLaunchIntentForPackage("com.zqunyan.zgwidget");
if(intent != null){
    intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    startActivity(intent);
}

根據(jù)類名打開界面

常用于打開系統(tǒng)設(shè)置界面,用于一些快捷功能設(shè)置。借助 Component 來實(shí)現(xiàn)

如:下面實(shí)例打開華為手機(jī)的設(shè)置頁面

Intent intent = new Intent();
ComponentName componentName = new ComponentName("com.android.settings", "com.android.settings.Settings$DisplaySettingsActivity");
intent.setComponent(componentName);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);

startActivityForResult

主頁面

跳轉(zhuǎn)按鈕點(diǎn)擊事件

Intent intent = new Intent(MainActivity.this, ReturnValueActivity.class);
//第二個參數(shù)用于處理返回結(jié)果是判斷是哪個語句調(diào)用的
startActivityForResult(intent, 1); //requestCode = 1

處理返回結(jié)果

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent intent){
    super.onActivityResult(requestCode, resultCode, intent);
    if(requestCode == 1){
        if(resultCode == 1){
            String content = intent.getStringExtra("content");
            lblStatus.setText("success");
    	}else{
            lblStatus.setText("fail");
        }
    } 
}

跳轉(zhuǎn)界面

跳轉(zhuǎn)界面?zhèn)骰胤祷刂?,并關(guān)閉界面

實(shí)例化一個空的 Intent綁定數(shù)據(jù)到 IntentsetResult() 回傳結(jié)果值和綁定了數(shù)據(jù)的 Intent關(guān)閉自身,主畫面接收返回結(jié)果

Intent intent = new Intent();
intent.putExtra("content", txtMessage.getText().toString());
//setResult第一個參數(shù)為結(jié)果碼,常用的有Activity.RESULT_OK、RESULT_CANCELED或者自定義整數(shù)型結(jié)果碼
// 第二個參數(shù)為返回值,返回值封裝在Intent中
setResult(1, intent); 
finish();

頁面?zhèn)髦?/h2>

Intent.putExtra 傳值

傳值

intent.putExtra("uname", "admin");

取值

Intent intent = getIntent();
String name = intent.getStringExtra("uname")

借助 Bundle 傳值

用于在 Activity 之間傳送值或數(shù)組資料,好處是當(dāng)一個頁面跳轉(zhuǎn)多個頁面時(shí),可以共用bundle。

簡單值

打包

Bundle bundle = new Bundle();
bundle.putString("NAME", "QY");
bundle.putInt("AGE", 18);
bundle.putDouble("TALL", 175.86);
bundle.putStringArrayList("lstFilePaths", lstFilePaths);
intent.putExtras(bundle);

收包

Intent intent = this.getIntent();
Bundle bundle = intent.getExtras();
String strName = bundle.getString("NAME");
int intAge = bundle.getInt("AGE");
ArrayList<String> lstFilePaths = bundle.getStringArrayList("lstFilePaths");

StringArrayList

正常傳值都為單個實(shí)際值,如果想要傳送列表數(shù)據(jù)則一般通過構(gòu)造函數(shù)或參數(shù)傳遞,直接通過 bundle 只能傳送 StringArrayList 簡單列表類型

自定義數(shù)據(jù)類

首先將自定義的數(shù)據(jù)類序列化,即繼承 implements Serializable 接口

數(shù)據(jù)類

public class GoodsInfoModule implements Serializable {}

傳值

bundle.putSerializable("goodsInfo", goodsInfo);

取值

goodsInfo = (GoodsInfoModule) bundle.getSerializable("goodsInfo");

到此這篇關(guān)于Android Activity活動頁面跳轉(zhuǎn)與頁面?zhèn)髦档奈恼戮徒榻B到這了,更多相關(guān)Android Activity頁面跳轉(zhuǎn)與頁面?zhèn)髦祪?nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Flutter底部導(dǎo)航欄的實(shí)現(xiàn)方式

    Flutter底部導(dǎo)航欄的實(shí)現(xiàn)方式

    這篇文章主要為大家詳細(xì)介紹了Flutter底部導(dǎo)航欄的實(shí)現(xiàn)方式,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-02-02
  • Android動畫學(xué)習(xí)筆記之補(bǔ)間動畫

    Android動畫學(xué)習(xí)筆記之補(bǔ)間動畫

    這篇文章主要為大家詳細(xì)介紹了Android動畫學(xué)習(xí)筆記之補(bǔ)間動畫,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-12-12
  • Android編程創(chuàng)建桌面快捷方式的常用方法小結(jié)【2種方法】

    Android編程創(chuàng)建桌面快捷方式的常用方法小結(jié)【2種方法】

    這篇文章主要介紹了Android編程創(chuàng)建桌面快捷方式的常用方法,結(jié)合實(shí)例形式總結(jié)分析了2種常見的實(shí)現(xiàn)方法與相關(guān)操作技巧,需要的朋友可以參考下
    2017-02-02
  • 詳解Android中實(shí)現(xiàn)熱更新的原理

    詳解Android中實(shí)現(xiàn)熱更新的原理

    這篇文章主要為大家介紹了Android 熱更新實(shí)現(xiàn)原理,及代碼分析,感興趣的小伙伴們可以參考一下
    2016-01-01
  • Android熱修復(fù)Tinker接入及源碼解讀

    Android熱修復(fù)Tinker接入及源碼解讀

    熱修復(fù)這項(xiàng)技術(shù),基本上已經(jīng)成為項(xiàng)目比較重要的模塊了。主要因?yàn)轫?xiàng)目在上線之后,都難免會有各種問題本文講述了Android熱修復(fù)Tinker接入及源碼解讀
    2018-09-09
  • Android中okhttp3使用詳解

    Android中okhttp3使用詳解

    這篇文章主要介紹了Android中okhttp3使用詳解,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2017-09-09
  • Android實(shí)現(xiàn)搖一搖簡單功能

    Android實(shí)現(xiàn)搖一搖簡單功能

    這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)搖一搖簡單功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-03-03
  • Android自定義拋出異常的方法詳解

    Android自定義拋出異常的方法詳解

    這篇文章主要給大家介紹了關(guān)于Android自定義拋出異常的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對各位Android開發(fā)者們具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06
  • android 大圖片拖拽并縮放實(shí)現(xiàn)原理

    android 大圖片拖拽并縮放實(shí)現(xiàn)原理

    android 大圖片拖拽縮放有利于用戶體驗(yàn),在開發(fā)過程中經(jīng)常使用到,這篇圖片拖拽縮放也是我在項(xiàng)目中用到的,今天整理一下,將源碼奉獻(xiàn)給大家,希望對大家以后碰到相似的問題有幫助
    2013-01-01
  • Android繪制動態(tài)折線圖

    Android繪制動態(tài)折線圖

    這篇文章主要為大家詳細(xì)介紹了Android繪制動態(tài)折線圖,折線圖隨著手指的滑動進(jìn)行動態(tài)繪制效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-01-01

最新評論