2011-11-13 86 views
0

我在這裏找到這段代碼從我自己的BTN打開畫廊:打開設備GALLARY只有

btnGallery.setOnClickListener(new View.OnClickListener() { 
public void onClick(View v) { 
    Intent intent = new Intent(); 
    intent.setType("image/*"); 
    intent.setAction(Intent.ACTION_GET_CONTENT); 
    startActivityForResult(Intent.createChooser(intent, "Select Picture"), 0); 
    } 
}); 

它的工作原理,但是當我點擊照片的時候退出查看器。

我想這是因爲「createChooser」。

如何將其更改爲僅查看照片而不選擇它們?

回答

0

據我所知,這是不可能的。

  1. 如果你有機會訪問活動的一個完整的類名來啓動圖庫應用程序,你可以把它作爲你平時做Activity.startActivity(Context context, Class clazz)。但是Gallery類是一個你無法直接訪問的內部API。

  2. 那麼,Gallery應用程序可以通過投擲一個合適的Intent來訪問,就像你的示例代碼。通過設置動作名稱intent.setAction(Intent.ACTION_GET_CONTENT),您可以請求您獲得的行爲(瀏覽所有圖片,選擇一個圖片,使用所選圖像的一個uri返回調用者活動)。還有另一個可能的操作Intent.ACTION_VIEW,如果使用圖像的uri設置,它會導致Gallery爲您顯示該圖像。但這就是我們可以從Gallery請求的所有內容(沒有其他預定義的操作可以滿足您的需求 - 僅用於瀏覽圖片)。

所以,一個出路是創建自己的自定義圖像瀏覽器活動。

+0

嗨Arhimed,10倍爲您的答案。你確定沒有其他的方法,但實現自定義圖像瀏覽器?我已經讓btn打開了默認打印機,另一個btn打開了短信的默認打印機。爲什麼很難/不可能打開gallary瀏覽器? – David

+0

@大衛:打開圖庫應用程序(1)選擇圖像或(2)查看所需圖像並不是問題,但沒有這樣的選項來啓動它只是爲了瀏覽。至少我沒有找到如何做到這一點。 –