android-Intent應用

來源:互聯網
上載者:User

標籤:

1.Activity

    方法:startActivityForResult 和 onActivityResult 相互呼應,

            用於處理返回結果的行為,如微博上使用者點擊某張圖片發布上去

2.Uri

    靜態方法:

       Uri.fromParts("package", "com.hq.myapp", null);

       Uri.parse(mailto:[email protected])

       Uri.fromFile(new File(filename))

    普通方法:

      getPath();

3.Intent

    普通方法:

        addCategory(Intent.CATEGORY_OPENABLE);

        setType("image/*");

        setData(ContactsContract.Contacts.CONTENT_URI);

        addFlags(int flags);

public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);        Button bt=(Button)findViewById(R.id.bt);       bt.setOnClickListener(new View.OnClickListener() {       public void onClick(View v) {     // intent的作用:        //1.呼叫瀏覽器         Uri uri1=Uri.parse("http://www.baidu.com");//data資料         Intent intent1=new Intent();         intent1.setAction(Intent.ACTION_VIEW);         intent1.setData(uri1);     //2.撥打電話功能         Uri uri2=Uri.parse("tel:10086");         Intent intent2=new Intent(android.content.Intent.ACTION_CALL,uri2);     //3.傳送簡訊        Uri uri3=Uri.parse("smsto:10086");        Intent intent3=new Intent(Intent.ACTION_SENDTO,uri3);        intent3.putExtra("sms_body", "welcome to android world");     //4.寄送電子郵件,自己可能有多個郵件用戶端,所以用        intent.createChooser()建立一個ACTION_CHOOSER的intent      //1.收件者地址,發送郵件的動作       Uri uri4=Uri.parse("mailto:[email protected]");       Intent intent4=new Intent(Intent.ACTION_SEND,uri4);      //2.自己的郵件用戶端,和發送的內容       intent4.putExtra(Intent.EXTRA_EMAIL, "[email protected]");       intent4.putExtra(Intent.EXTRA_TEXT, "android mail");     //3.指定data資料的類型,預設值       intent4.setType("text/plain");     //createChooser啟動intent       startActivity(Intent.createChooser(intent4, "選擇Email用戶端"));      //6.播放多媒體檔案            //1.動作:顯示視圖            Intent intent6=new Intent();            intent6.setAction(Intent.ACTION_VIEW);            //2.設定data和type            Uri uri6=Uri.parse("file:///sdcard/01.mp3");            intent6.setDataAndType(uri6, "audio/mp3");         //7.安裝APK檔案            //1.動作:顯示視圖            Intent intent7=new Intent ();            intent7.setAction(Intent.ACTION_VIEW);            //2.setDataAndType            //2.1 擷取file的路徑:Environment.getEx             String filename=Environment.getExternalStorageDirectory()+"mapp.apk";            intent7.setDataAndType(Uri.fromFile(new File(filename)), "application/vnd.android.package-archive");         //8.卸載應用程式:卸載的路徑(Uri),卸載的動作(delete)            Uri uri8=Uri.fromParts("package", "com.hq.myapp", null);            Intent intent8=new Intent(Intent.ACTION_DELETE,uri8);         //9.訪問連絡人            Intent intent9 =new Intent();            intent9.setAction(Intent.ACTION_VIEW);            intent9.setData(ContactsContract.Contacts.CONTENT_URI);     }});          //10.從圖庫中選擇圖片        //startActivityForResult(intent, requestCode);        //該intent要返回一張圖片(result),所以要調用該方法        //onActivityResult(int requestCode, int resultCode, Intent data)           //兩個code的是匹配哪個intent返回的,intent包含了使用者選擇的結果資料。          Intent intent=new Intent();          //1.動作:擷取內容get_content          intent.setAction(Intent.ACTION_GET_CONTENT);          //2.資料類型Type,image/*          intent.setType("image/*");          //3.add類別:該內容必須是可以開啟的          intent.addCategory(Intent.CATEGORY_OPENABLE);          //4.啟動ForResult方法,          startActivityForResult(intent, 0);        }       @Override    protected void onActivityResult(int requestCode, int resultCode, Intent data) {        //匹配對應的Intent           if(requestCode==0&& resultCode==Activity.RESULT_OK)           {               //擷取data:uri               Uri uri=data.getData();               //顯示圖片               Toast.makeText(this,uri.getPath(), 100);           }    }

 

  

 

  

android-Intent應用

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.