• Activity之间的隐士跳转


    /**
                 * 方法一:在构造函数中指定
                 */
                /*Intent intent=new Intent(this,TwoActivity.class);
                startActivity(intent);*/
                
                /**
                 * 方法二:用 setClass 方法
                 */
                /*Intent intent=new Intent();
                intent.setClass(this, TwoActivity.class);
                startActivity(intent);*/
                
                /**
                 * 方法三:用 setClassName 方法(第一个参数是上下文,第二个参数是要跳转的Activity的包名)
                 */
                /*Intent intent=new Intent();
                intent.setClassName(this, "com.example.yinshitiaozhuan.TwoActivity");
                startActivity(intent);*/
                
                /**
                 * 方法四:用 setComponent 方法
                 */
                /*Intent intent=new Intent();
                //设置组件//setComponent方法的参数:ComponentName
                intent.setComponent(new ComponentName(this, TwoActivity.class));
                startActivity(intent);*/
                
                /**
                 * 方法五:用 setComponent 方法
                 */
                /*Intent intent=new Intent();
                //设置组件//setComponent方法的参数:ComponentName
                intent.setComponent(new ComponentName(this, "com.example.yinshitiaozhuan.TwoActivity"));
                startActivity(intent);*/
                
     //-------------------------注:下面的隐士跳转需要在清单文件中注册---------------------------------------    

    清单文件中:

    <activity
                android:name="com.example.yinshitiaozhuan.TwoActivity"
                android:label="@string/title_activity_two">
                
                <intent-filter>
                    <action android:name="com.example.yinshitiaozhuan.TwoActivity"/>
                    <category android:name="android.intent.category.DEFAULT"/>
                </intent-filter>
            </activity>

      //--------------------------------------------------------------------------------  
                /**
                 * 方法6:隐士跳转
                 */
                  //创建一个隐式的 Intent 对象:Action 动作
                /*Intent intent=new Intent();
                   //设置 Intent 的动作
                intent.setAction("com.example.yinshitiaozhuan.TwoActivity");
                
                startActivity(intent);*/


                
                /**
                 * 方法7://设置壁纸
                 */
                /*Intent intent=new Intent(Intent.ACTION_SET_WALLPAPER);
                startActivity(Intent.createChooser(intent, "设置壁纸"));*/
                
                
                /**
                 * 方法8:   //调用搜索
                 */
                /*Intent intent=new Intent();
                intent.setAction(Intent.ACTION_WEB_SEARCH);
                startActivity(intent);*/
                
                /**
                 * 方法9:   //卸载APK   
                 */
                Uri uri = Uri.fromParts("package", "com.example.yinshitiaozhuan", null);   
                Intent intent = new Intent(Intent.ACTION_DELETE, uri);    
                startActivity(intent);

    //------------一下是我学习的博客---------------------------------

    http://blog.sina.com.cn/s/blog_5d2e69770102v0ra.html

    //---------------------------------------------------------

    显式 Intent 调用

    1     //创建一个显式的 Intent 对象(方法一:在构造函数中指定)

     2      Intent intent = new Intent(Intent_Demo1.this, Intent_Demo1_Result1.class);

     3     

     4      Bundle bundle = new Bundle();

     5      bundle.putString("id", strID);

     6      intent.putExtras(bundle);

     7     

     8      intent.putExtra("name", "bbb");

     9      intent.putExtra("userInfo", new UserInfo(1, "name"));

    10      startActivity(intent);

    11     

    12      //创建一个显式的 Intent 对象(方法二:用 setClass 方法)

    13      Intent intent = new Intent();

    14      Bundle bundle = new Bundle();

    15      bundle.putString("id", strID);

    16      intent.setClass(Intent_Demo1.this, Intent_Demo1_Result1.class);

    17      intent.putExtras(bundle);

    18      startActivity(intent);

    19     

    20      //创建一个显式的 Intent 对象(方法三:用 setClass 方法)

    21      Intent intent = new Intent();

    22      Bundle bundle = new Bundle();

    23      bundle.putString("id", strID);

    24      intent.setClassName(Intent_Demo1.this, "com.great.activity_intent.Intent_Demo1_Result1");

    25      intent.putExtras(bundle);

    26      startActivity(intent);

    27     

    28      //创建一个显式的 Intent 对象(方法四:用 setComponent 方法)

    29      Intent intent = new Intent();

    30      Bundle bundle = new Bundle();

    31      bundle.putString("id", strID);

    32      //setComponent方法的参数:ComponentName

    33      intent.setComponent(new ComponentName(Intent_Demo1.this, Intent_Demo1_Result1.class));

    34      intent.putExtras(bundle);

    35      startActivity(intent);

    Intent隐式跳转 Action

     1     //创建一个隐式的 Intent 对象:Action 动作

     2    

     7     Intent intent = new Intent();

     8     //设置 Intent 的动作

     9     intent.setAction("com.great.activity_intent.Intent_Demo1_Result3");

    10     Bundle bundle = new Bundle();

    11     bundle.putString("id", strID);

    12     intent.putExtras(bundle);

    13     startActivity(intent);

    AndroidManifest.xml

    1    < activity android:name="Intent_Demo1_Result3"

    2                   android:label="Intent_Demo1_Result3">

    3             < intent-filter>

    4                 < action android:name="com.great.activity_intent.Intent_Demo1_Result3" />

    5                 < category android:name="android.intent.category.DEFAULT" />

    6             < /intent-filter>

    7         < /activity>

    Category 类别

     1 //创建一个隐式的 Intent 对象:Category 类别

     2 Intent intent = new Intent();

     3 intent.setAction("com.great.activity_intent.Intent_Demo1_Result33");

     4

     8 intent.addCategory(Intent.CATEGORY_INFO);

     9 intent.addCategory(Intent.CATEGORY_DEFAULT);

    10 Bundle bundle = new Bundle();

    11 bundle.putString("id", strID);

    12 intent.putExtras(bundle);

    13 startActivity(intent);

    AndroidManifest.xml

      < activity android:name="Intent_Demo1_Result2"

                      android:label="Intent_Demo1_Result2">

                < intent-filter>

                   

                    < category android:name="android.intent.category.INFO" />

                    < category android:name="android.intent.category.BROWSABLE" />

                    < category android:name="android.intent.category.DEFAULT" />

                   

                < /intent-filter>

            < /activity>

    Date 数据 跳转

     1 //创建一个隐式的 Intent 对象,方法四:Date 数据

     2 Intent intent = new Intent();

     3 Uri uri = Uri.parse("http://www.great.org:8080/folder/subfolder/etc/abc.pdf");

     4

     5 //注:setData、setDataAndType、setType 这三种方法只能单独使用,不可共用               

     6 //要么单独以 setData 方法设置 URI

     7 //intent.setData(uri);

     8 //要么单独以 setDataAndType 方法设置 URI 及 mime type

     9 intent.setDataAndType(uri, "text/plain");

    10 //要么单独以 setDataAndType 方法设置 Type

    11 //intent.setType("text/plain");

    12

    13

    17 Bundle bundle = new Bundle();

    18 bundle.putString("id", strID);

    19 intent.putExtras(bundle);

    20 startActivity(intent);

    AndroidManifest.xml

     1         < activity android:name="Intent_Demo1_Result2"

     2                   android:label="Intent_Demo1_Result2">

     3             < intent-filter>

     4                 < category android:name="android.intent.category.DEFAULT" />

     5                 < data

     6                     android:scheme="http"

     7                     android:host="www.great.org"

     8                     android:port="8080"

     9                     android:pathPattern=".*pdf"

    10                     android:mimeType="text/plain"/>

    11             < /intent-filter>

    12         < /activity>

    13        

     调用系统的的组件

        //web浏览器

        Uri uri= Uri.parse("http://www.baidu.com:8080/image/a.jpg");

        Intent intent = new Intent(Intent.ACTION_VIEW, uri);

        startActivity(intent);

       

        //地图(要在 Android 手机上才能测试)

        Uri uri = Uri.parse("geo:38.899533,-77.036476");

        Intent intent = new Intent(Intent.ACTION_VIEW, uri);

        startActivity(intent);

       

        //路径规划

        Uri uri = Uri.parse("http://maps.google.com/maps?f=d&saddr=startLat startLng&daddr=endLat endLng&hl=en");

        Intent it = new Intent(Intent.ACTION_VIEW, uri);

        startActivity(it);

       

        //拨打电话-调用拨号程序

        Uri uri = Uri.parse("tel:15980665805");

        Intent intent = new Intent(Intent.ACTION_DIAL, uri);

        startActivity(intent);

       

        //拨打电话-直接拨打电话

        //要使用这个必须在配置文件中加入< uses-permission android:name="android.permission.CALL_PHONE"/>

        Uri uri = Uri.parse("tel:15980665805");

        Intent intent = new Intent(Intent.ACTION_CALL, uri);

        startActivity(intent);

        //调用发送短信程序(方法一)

        Uri uri = Uri.parse("smsto:15980665805");

        Intent intent = new Intent(Intent.ACTION_SENDTO, uri);

        intent.putExtra("sms_body", "The SMS text");

        startActivity(intent);

       

        //调用发送短信程序(方法二)

        Intent intent = new Intent(Intent.ACTION_VIEW);    

        intent.putExtra("sms_body", "The SMS text");    

        intent.setType("vnd.android-dir/mms-sms");    

        startActivity(intent);

       

        //发送彩信

        Uri uri = Uri.parse("content://media/external/images/media/23");

        Intent intent = new Intent(Intent.ACTION_SEND);

        intent.putExtra("sms_body", "some text");

        intent.putExtra(Intent.EXTRA_STREAM, uri);

        intent.setType("image/png");

        startActivity(intent);

       

        //发送Email(方法一)(要在 Android 手机上才能测试)

        Uri uri = Uri.parse("mailto:zhangsan@gmail.com");

        Intent intent = new Intent(Intent.ACTION_SENDTO, uri);

        startActivity(intent);

       

        //发送Email(方法二)(要在 Android 手机上才能测试)

        Intent intent = new Intent(Intent.ACTION_SENDTO); 

        intent.setData(Uri.parse("mailto:zhangsan@gmail.com")); 

        intent.putExtra(Intent.EXTRA_SUBJECT, "这是标题"); 

        intent.putExtra(Intent.EXTRA_TEXT, "这是内容"); 

        startActivity(intent);

       

        //发送Email(方法三)(要在 Android 手机上才能测试)

        Intent intent = new Intent(Intent.ACTION_SEND);

        intent.putExtra(Intent.EXTRA_EMAIL, "me@abc.com");

        intent.putExtra(Intent.EXTRA_SUBJECT, "这是标题"); 

        intent.putExtra(Intent.EXTRA_TEXT, "这是内容");

        intent.setType("text/plain");

        //选择一个邮件客户端

        startActivity(Intent.createChooser(intent, "Choose Email Client")); 

       

        //发送Email(方法四)(要在 Android 手机上才能测试)

        Intent intent = new Intent(Intent.ACTION_SEND);

        //收件人

        String[] tos = {"to1@abc.com", "to2@abc.com"};

        //抄送人

        String[] ccs = {"cc1@abc.com", "cc2@abc.com"};

        //密送人

        String[] bcc = {"bcc1@abc.com", "bcc2@abc.com"};

        intent.putExtra(Intent.EXTRA_EMAIL, tos);   

        intent.putExtra(Intent.EXTRA_CC, ccs);

        intent.putExtra(Intent.EXTRA_BCC, bcc);

        intent.putExtra(Intent.EXTRA_SUBJECT, "这是标题");

        intent.putExtra(Intent.EXTRA_TEXT, "这是内容");   

        intent.setType("message/rfc822");   

        startActivity(Intent.createChooser(intent, "Choose Email Client"));

       

        //发送Email且发送附件(要在 Android 手机上才能测试)

        Intent intent = new Intent(Intent.ACTION_SEND);   

        intent.putExtra(Intent.EXTRA_SUBJECT, "The email subject text");   

        intent.putExtra(Intent.EXTRA_STREAM, "file:///sdcard/mp3/醉红颜.mp3");   

        intent.setType("audio/mp3");   

        startActivity(Intent.createChooser(intent, "Choose Email Client"));

       

        //播放媒体文件(android 对中文名的文件支持不好)

        Intent intent = new Intent(Intent.ACTION_VIEW);

        //Uri uri = Uri.parse("file:///sdcard/zhy.mp3");

        Uri uri = Uri.parse("file:///sdcard/a.mp3");

        intent.setDataAndType(uri, "audio/mp3");

        startActivity(intent);

       

        Uri uri = Uri.withAppendedPath(MediaStore.Audio.Media.INTERNAL_CONTENT_URI, "1");    

        Intent intent = new Intent(Intent.ACTION_VIEW, uri);    

        startActivity(intent);

       

        //音乐选择器

        //它使用了Intent.ACTION_GET_CONTENT 和 MIME 类型来查找支持 audio/* 的所有 Data Picker,允许用户选择其中之一

        Intent intent = new Intent(Intent.ACTION_GET_CONTENT);

        intent.setType("audio/*");

        //Intent.createChooser:应用选择器,这个方法创建一个 ACTION_CHOOSER Intent

        startActivity(Intent.createChooser(intent, "选择音乐"));

       

        Intent intent1 = new Intent(Intent.ACTION_GET_CONTENT);

        intent1.setType("audio/*");

       

        Intent intent2 = new Intent(Intent.ACTION_CHOOSER);

        intent2.putExtra(Intent.EXTRA_INTENT, intent1);

        intent2.putExtra(Intent.EXTRA_TITLE, "aaaa");

        startActivity(intent2);

       

       

    //                //设置壁纸

    //                Intent intent = new Intent(Intent.ACTION_SET_WALLPAPER); 

    //                startActivity(Intent.createChooser(intent, "设置壁纸")); 

       

        //卸载APK

        //fromParts方法

        //参数1:URI 的 scheme

        //参数2:包路径

        //参数3:

        Uri uri = Uri.fromParts("package", "com.great.activity_intent", null);   

        Intent intent = new Intent(Intent.ACTION_DELETE, uri);    

        startActivity(intent);

       

        //安装APK(???)

        Uri uri = Uri.fromParts("package", "com.great.activity_intent", null); 

        Intent intent = new Intent(Intent.ACTION_PACKAGE_ADDED, uri);

        startActivity(intent);

       

        //调用搜索

        Intent intent = new Intent(); 

        intent.setAction(Intent.ACTION_WEB_SEARCH); 

        intent.putExtra(SearchManager.QUERY, "android"); 

        startActivity(intent);

  • 相关阅读:
    iOS7 界面适配-NavigationBar StateBar
    ios UIScrollView 基础属性
    保存图片信息通过NSData保存到本地文件中
    根据UIScrollView 滑动获取当前页数
    iOS工程通用模块介绍
    ios--appDelegate切换根视图rootViewController(最常用的场合是首次启动跳至导航ViewController)
    使用UIGestureRecognizer监听屏幕事件
    Introduction to CocoaPods Tutorial
    最基本的添加头像
    MFC多语言程序版本,在不同的windows系统上的使用 FP_SetThreadUILanguage
  • 原文地址:https://www.cnblogs.com/changyiqiang/p/6031505.html
Copyright © 2020-2023  润新知