2017年4月12日 星期三

[Android]intent事件(兩種寫法)

有兩種intent的事件寫法,記錄在這邊:


1、
第一種是送值到下一個頁面,在下一個頁面收值
(主頁面)送出:
Intent intent=new Intent(this, PhotoDetail.class);intent.putExtra("photo", MainActivity.contactTemp.getPhoto() );this.startActivity(intent);

(頁面二)收值:
Uri imgUri=Uri.parse("file://" + getIntent().getStringExtra("photo"));



2、
第二種寫法是有回傳值的類型,例如這個:

(主頁面)送出:
startActivityForResult(new Intent(MainActivity.this, AddNotes.class), 1);

(主頁面)收回傳值
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    if (resultCode == RESULT_OK) {
        Bundle bundleResult = data.getExtras();
        String photo = bundleResult.getString("photo").toString();
    }
}




註:請記得在AndroidManifest.xml加activite,以這個程式為例就是以下的寫法:
android:name=".PhotoDetail">



這邊順便寫一寫如何引用照想功能的api:
Intent it = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);startActivityForResult(it,100);
startActivityForResult(it,100);




沒有留言: