中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Intent簡單介紹

發布時間:2020-07-25 04:31:34 來源:網絡 閱讀:806 作者:番茄蛋花 欄目:移動開發


  Intent目前翻譯為意圖,所謂意圖就是想做什么。是Android系統組件之間的通信的橋梁。其描述的基本內容可以分為:conponentName(組件名稱)、Action(動作名稱)、Data(數據)、Category(類別)、Extra(附加數據)和Log(標志位)六個部分。

  1 、指定conponentName

     指定組件名稱的方式又叫顯示調用,明確要調用的組件,直接調用組件名,調用方式如下

Intent goto = new Intent();
goto.setClass(OneActivity.this,Second.class);
OnActivity.this.startActivity(goto);

  當然兩個Activity必須在AndroidManifest.xml注冊。


  2 、指定Action

     

    沒有明確指出組件名,隱式調用,需要和Data,Catagory,Extra配合使用。這個隱式調用又分為靜態調用和動態調用。

   (一)靜態隱式調用

      這種調用在方式上面體現為必須將要調用的組件的IntentFilter在AndroidManifest.xml里面注冊,并且至少需要一個<action>標簽,沒有則任何Intent都不匹配。

 下面是Activity中的寫法,目的是Activity傳遞數據給BroadcastReceiver

Intent sendIntent = new Intent("intent_1");//動作名稱為action_1
sendIntent.putExtra("sendmsg","你好");//存儲數據到Intent中,通過廣播攜帶到目的組件中
MainActivity.this.sendBroadcast(sendIntent);//發送廣播

  廣播內容

public class MyBroadCastReceiver extends BroadcastReceiver{

       @Override
       public void onReceive(Context context,Intent intent){
           Toast.makeText(context,intent.getExtra("sendmsg"),
           Toast.LENGTH_LONG).show();
       }
}

 注冊接收者,必須要,不然過濾器無法找到

<receiver android:name=".MyBroadCastReceiver">
    <intent-filter>
       <action android:name="intent_1" />
    </intent-filter>
</receiver>

同樣的道理,在Activity和Activity之間通訊的時候,不過Activity在注冊的時候要加一個標簽

<intent-filter>
   <action android:name="intent_2" />
   <category android:name="android.intent.category.DEFAULT" />
</intent-filter>

  

     (二)動態隱式調用

      也就是不在注冊文件里面注冊intentFilter而是需要調用的時候再注冊。如下

IntentFilter myfilter = new IntentFilter();
MyBroadCast mybroad = new MyBroadCast();
myfilter.addAction("action_3");
registerReceiver(mybroad,myfilter); //動態注冊
Intent intent = new Intent();
intent.putExtra("msg","哈哈");
intent.setAction("action_3");
Main.this.sendBroadcast(intent);

   3、使用系統自帶的ActionName

由于實在太多這里就不詳解了,用法大致為:

Intent intent = new Intent(Intent.ACTION_DIAL);//顯示電話撥號界面
this.startActivity(intent);
 //打開瀏覽器并且指定網頁
 Uri uri = Uri.parse("
 Intent intent = new Intent(Intent.ACTION_VIEW,uri);
 this.startActivity(intent);

  以下是所有系統自帶ActionName:

android.intent.action.ALL_APPS
android.intent.action.ANSWER
android.intent.action.ATTACH_DATA
android.intent.action.BUG_REPORT
android.intent.action.CALL
android.intent.action.CALL_BUTTON
android.intent.action.CHOOSER
android.intent.action.CREATE_LIVE_FOLDER
android.intent.action.CREATE_SHORTCUT
android.intent.action.DELETE
android.intent.action.DIAL
android.intent.action.EDIT
android.intent.action.GET_CONTENT
android.intent.action.INSERT
android.intent.action.INSERT_OR_EDIT
android.intent.action.MAIN
android.intent.action.MEDIA_SEARCH
android.intent.action.PICK
android.intent.action.PICK_ACTIVITY
android.intent.action.RINGTONE_PICKER
android.intent.action.RUN
android.intent.action.SEARCH
android.intent.action.SEARCH_LONG_PRESS
android.intent.action.SEND
android.intent.action.SENDTO
android.intent.action.SET_WALLPAPER
android.intent.action.SYNC
android.intent.action.SYSTEM_TUTORIAL
android.intent.action.VIEW
android.intent.action.VOICE_COMMAND
android.intent.action.WEB_SEARCH
android.net.wifi.PICK_WIFI_NETWORK
android.settings.AIRPLANE_MODE_SETTINGS
android.settings.APN_SETTINGS
android.settings.APPLICATION_DEVELOPMENT_SETTINGS
android.settings.APPLICATION_SETTINGS
android.settings.BLUETOOTH_SETTINGS
android.settings.DATA_ROAMING_SETTINGS
android.settings.DATE_SETTINGS
android.settings.DISPLAY_SETTINGS
android.settings.INPUT_METHOD_SETTINGS
android.settings.INTERNAL_STORAGE_SETTINGS
android.settings.LOCALE_SETTINGS
android.settings.LOCATION_SOURCE_SETTINGS
android.settings.MANAGE_APPLICATIONS_SETTINGS
android.settings.MEMORY_CARD_SETTINGS
android.settings.NETWORK_OPERATOR_SETTINGS
android.settings.QUICK_LAUNCH_SETTINGS
android.settings.SECURITY_SETTINGS
android.settings.SETTINGS
android.settings.SOUND_SETTINGS
android.settings.SYNC_SETTINGS
android.settings.USER_DICTIONARY_SETTINGS
android.settings.WIFI_IP_SETTINGS
android.settings.WIFI_SETTINGS
android.settings.WIRELESS_SETTINGS


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

岚皋县| 白朗县| 东方市| 仁寿县| 勃利县| 无为县| 廉江市| 茌平县| 长治县| 博客| 余庆县| 西华县| 芜湖县| 英吉沙县| 固始县| 平潭县| 彭山县| 祁门县| 蓬安县| 民丰县| 濮阳县| 咸阳市| 都兰县| 印江| 陵川县| 探索| 和静县| 府谷县| 锦屏县| 大关县| 开江县| 广南县| 浦县| 阳东县| 兰西县| 罗平县| 精河县| 高邑县| 丹寨县| 大田县| 文水县|