zoukankan      html  css  js  c++  java
  • Intent总结03 Action属性

    Intent总结03Action属性

    Action 规定了Intent要完成的动作,是一个字符串常量。使用setAction()来设置Action属性,使用getAction()来获得Action属性。既可以使用系统内置的Action,也可以自己定义。系统自定义的action,如ACTION_VIEW, ACTION_EDIT, ACTION_MAIN等等。
    
     

    1.自定义Action

    在“目的Activity”的AndroidManifest.xml中指定action常量。 
    <activity android:name=".ActionDestination">
       <intent-filter>
           <action android:name="Skywang_ACTION" />
           <category android:name="android.intent.category.DEFAULT"/>
       </intent-filter>
    </activity>

    <categoryandroid:name="android.intent.category.DEFAULT" />的作用是用来说明,可以通过隐式跳转(即其它类调用setAction("Skywang_ACTION"))来找到ActionDestination这个activity。这样,其它的类就可以通过下面的代码跳转到ActionDestination。跳转时,setAction的字符串"Skywang_ACTION"必须与AndroidManifest.xml中定义的"Skywang_ACTION"一致。
    Intent intent = new Intent();  
    intent.setAction("Skywang_ACTION");  
    startActivity(intent);

    2系统Action

    // 流量网页
    Uri uri =Uri.parse("http://www.baidu.com"); 
    Intent intent = newIntent(Intent.ACTION_VIEW, uri);  
    startActivity(intent); 
    // 拨打电话
    // if you want to use ACTION_DIAL, you mustadd permissin in manifest, the permission is bellow
    // <uses-permissionandroid:name="android.permission.CALL_PHONE" />
    Uri uri = Uri.parse("tel:12580"); 
    Intent it = new Intent(Intent.ACTION_DIAL,uri); 
    startActivity(it);
    // 发送短信
    Uri uri = Uri.parse("smsto:13410177756"); 
    Intent it = newIntent(Intent.ACTION_SENDTO, uri); 
    it.putExtra("sms_body", "TheSMS text"); 
    startActivity(it);
    //播放mp3
    Intent it = new Intent(Intent.ACTION_VIEW); 
    Uri uri =Uri.parse("file:///sdcard/song.mp3");  
    it.setDataAndType(uri, "audio/mp3"); 
    startActivity(it);


    3 代码和说明

    程序的目录结构如下:


    程序的主界面如下:


    点击“Action Self-Defin”跳转到自定义的程序界面:


    点击“Action Http”跳转到网页浏览界面:


    点击“Action Call”跳转到拨号程序界面:


    点击“Action Mms”跳转到短信程序界面:



    点击下载:示例代码

  • 相关阅读:
    HDU 5791 Two (DP)
    POJ 1088 滑雪 (DPor记忆化搜索)
    LightOJ 1011
    POJ 1787 Charlie's Change (多重背包 带结果组成)
    HDU 5550 Game Rooms (ccpc2015 K)(dp)
    HDU 5542 The Battle of Chibi (ccpc 南阳 C)(DP 树状数组 离散化)
    HDU 5543 Pick The Sticks (01背包)
    HDU 5546 Ancient Go (ccpc2015南阳G)
    NB-IoT的DRX、eDRX、PSM三个模式 (转载,描述的简单易懂)
    MQTT 嵌入式端通讯协议解析(转)
  • 原文地址:https://www.cnblogs.com/skywang12345/p/3165552.html
Copyright © 2011-2022 走看看