我在我的應用中實施了Filepicker
,允許用戶從手機中選擇照片。我正在使用的代碼如下:如何讓FilePicker在某些BlackBerry手機上正常工作?
調用Filepicker:
try
{
UiApplication.getUiApplication().invokeLater(new Runnable()
{
public void run()
{
FilePicker fp = FilePicker.getInstance();
fileListener = new FilePickListener();
fp.setListener(fileListener);
fp.show();
}
});
}
catch (Exception e)
{
UiApplication.getUiApplication().invokeLater(new Runnable()
{
public void run()
{
Dialog.alert("Please check your data card..");
}
});
}
而且方法來獲取文件名在我FilePickListener:
public void selectionDone(String str)
{
this.currFileName = str;
int index = str.lastIndexOf('/');
Dialog.alert("Filename: "+str.substring(index+1).trim());
}
這工作完全在我大多數手機已經嘗試過了(它已經與一些運行OS5和一些運行OS6的手機組合在一起)。但在有些情況下,如8900(運行OS v5.0.0.411),它不能正常工作。 Filepicker
被調用並出現,但是當任何文件被選中時,selectionDone方法不會被調用。我已經在兩個獨立的8900上進行了測試,兩者都有相同的問題。
有沒有人有一個想法,爲什麼它適用於某些手機,而不是其他?
你確定selectionDone不叫,只有一個對話框嘗試在selectionDone這樣的: 公共無效selectionDone(字符串str){ Dialog.alert( 「文件名:」 + STR)?; } 如果再調用方法 – frayab
這是我檢查是否被調用的方式。我甚至只是放入了一個彈出對話框的通用消息,但沒有被調用。 – Buffel