2013-06-27 10 views
5

Tôi khá mới phát triển Android.Ý định: xóa Luôn/Chỉ một lần nút

Có thể xóa hai nút (Luôn luôn/Chỉ một lần) khi mở một Intent.ACTION_GET_CONTENT không?

Đây là mã hiện tại của tôi.

Intent intent = new Intent(Intent.ACTION_GET_CONTENT); 
intent.setType("image/*"); 
startActivityForResult(intent,PICK); 

Trả lời

12

Tôi tìm thấy một cách để đạt được điều này:

Intent intent = new Intent(Intent.ACTION_GET_CONTENT); 
intent.setType("image/*"); 
Intent openInChooser = Intent.createChooser(intent, "Open in..."); 
startActivityForResult(openInChooser,PICK); 
+1

Giải pháp tốt nhất tôi đã tìm thấy cho đến nay cảm ơn! Những người khác đã đề xuất tạo bộ chọn tùy chỉnh, điều này rõ ràng là hoạt động nhiều hơn. Bạn nên đánh dấu câu trả lời của chính mình là chính xác – ben

0

Đó là hộp thoại do hệ thống tạo, vì vậy bạn không thể thay đổi.

Bạn có thể sử dụng queryIntentActivities() để nhận danh sách các ứng dụng có thể phản hồi ý định của bạn và sau đó hiển thị chúng trong hộp thoại của riêng bạn mà không cần nút nếu bạn muốn.

+2

Hoặc thậm chí khởi động một cụ thể mà bạn muốn. Nhưng tôi sẽ cảnh báo chống lại điều đó- danh sách các ứng dụng đã cài đặt khác nhau tùy theo thiết bị và tôi sẽ không giả định thứ gì đó sẽ được cài đặt trên bất kỳ kiểu điện thoại nào khác. Nhưng nó có thể đủ tốt nếu bạn đang viết ứng dụng cho chính mình. –