2011-12-21 81 views
0

我試圖表現出InputMethodServicePopupWindow,但是當我告訴它使用此代碼:彈出窗口關閉服務

LayoutInflater inflater = (LayoutInflater) getSystemService(LAYOUT_INFLATER_SERVICE); 
pw = new PopupWindow(
inflater.inflate(R.layout.info_dialog, null, false), 320, 480, true); 
pw.showAtLocation(mInputView, Gravity.CENTER, 0, 0); 

窗口將關閉我的InputMethodService之前短暫地閃爍。

我從logcat中得到的錯誤就是這樣的:

12-21 15:22:20.530: E/InputMethodService(4075): Unexpected null in startExtractingText : mExtractedText = null, input connection = [email protected] 

有沒有人見過這個或不知道如何處理呢?

回答

0

有沒有REAL你沒有使用AlertDialog/Dialog的原因?爲什麼基於你的代碼,一個對話框將套用這個。它會在用戶的屏幕中間彈出,您可以填充該視圖。而且,你甚至可以設置聽衆!

+0

真正的原因是在我的問題的第一行。我在InputMethodService中。對話框不能用於服務。 – coder 2012-01-19 14:18:15

+0

恩,是的,他們可以。所有你需要的是上下文。除非,「InputMethodService」是一些「特殊」的服務。我懷疑。我會研究它。 – JoxTraex 2012-01-19 15:43:09

+0

嗯,我錯了,你不能直接這樣做,但你可以從你的服務發送一個意圖到你的活動來處理啓動該對話框,檢查我的更新後的帖子。 – JoxTraex 2012-01-19 16:21:40