Print
Details: Category: บทความแอนดรอยด์ | Published: 01 April 2018 | Hits: 9396

อธิบายด้วยภาพดีกว่า ครับ มาสเตอร์ ต้องการ ให้คลิกที่ภาพ

และ ไปเลือก แอพที่จะเปิดรูปได้ก่อน

จากตัวอย่างใช้ Gallery 

เลือกรูปที่ต้องการ และ เอามาแสดงที่ ImageView แบบนี้

เรามาเริ่มสร้างก้นครับ

ประกาศตัวแปร ของ ImageView

มาสเตอร์ ต้องการความเป็น Private เพื่อให้ เมธอด ทุกๆ ต้วใน Activitiy สามารถใช้งานได้ครับ

มาสเตอร์ ทำการแยกเมธอดออกไป และ Initial View ไปผูกกับ ImageView และ Get OnClickListener

สร้าง ออฟเจ็ค intent ให้ ACTION_GET_CONTENT คือการย้ายการทำงานไปทำในแอพอื่น และนำผลลัพธ์ ที่แอพอื่นทำ กลับมา ที่ onActivityResult

คลิกขวา ในคลาส (นอกเมธอดทุกตัวนะ) ให้ Override Methods

Create onActivityResult ออกมาครับ

 

ก็คือ เมธอดที่จะทำงาน หลังจากที่เราเลือกภาพ ใน Gallery ได้แล้ว

 

มาสเตอร์ ไปประกาศตัวแปร Uri เพื่อรับค่าจาก Action Get Intent ได้ครับ

มาสเตอร์ If Statement เพื่อหาเงื่อนไขในการ เลือกรูปว่า สำเร็จหรือเปล่าโดยดูที่ ตัวแปร resultCode

 โดยดูว่า resultCode มีค่าเท่ากับ RESULT_OK หรือเปล่า

 

มาสเตอร์ ใส่ Try Catch Statement ป้องกัน แอพแคซ

ใส่โค้ดการสร้าง Bitmap เข้าไป และไปแสดงใน ImageView

ในมือถือบางเครื่องมีการเก็บภาพไว้ใน Sd Card ไปขออนุญาติ อ่านจาก AndroidManiFest ด้วย

ปรับ targetSdk มาเป็น 22 หลบ ซิคิวรีตี่ ของ 23 และลองทดสองโค้ดบนเครื่องจริงนะครับ

  

 

  

เรียบร้อยโรงเรียนมาสเตอร์