昨天我們成功開啟相機並且回傳相片,但我還沒設定要回傳到哪,
今天我一樣要在不設定回傳到哪的情況下(有夠不負責任的啦!),
先來實現開啟相簿的功能。
import android.provider.MediaStore
findViewById<Button>(R.id.btn_photo).setOnClickListener {
//建立一個相片的 Intent 物件
val intent = Intent(MediaStore.ACTION_IMAGE_CAPTURE)
startActivityForResult(intent, 0)
}
findViewById<Button>(R.id.btn_album).setOnClickListener {
//建立一個要進行影像獲取的 Intent 物件
val intent = Intent(Intent.ACTION_GET_CONTENT).setType("image/*")
startActivityForResult(intent, 1) //發送 Intent
}
昨天我們監聽btn_photo
的單次點擊事件,
用來開啟相機(ACTION_IMAGE_CAPTURE
),
並且回傳照片(startActivityForResult(intent, 0)
)。
今天我們監聽btn_album
的單次點擊事件,
用來開啟相簿(ACTION_GET_CONTENT)
,
並且回傳照片(startActivityForResult(intent, 1)
)。
相機回傳的結果是requestCode:0
相機回傳的結果是requestCode:1
這樣才能讓程式分辨這張照片是從哪裡來的,
要這樣做的原因是: 兩個不同來源的相片要用不同的處理方式再丟入模型!