我正在構建我的第一個Android應用程序,這是一個簡單的遊戲。我通過擴展Activity類並使用2D圖形通過使用Canvas繪製到屏幕(用於學習目的)來完成它。在Android遊戲中獲取用戶輸入
現在我想獲得用戶/玩家的首字母縮寫,並且我需要類似組件的內容來閱讀它。我可以自己動手繪製一個鍵盤,並將觸摸監聽器綁定到它上面或讀取觸摸事件,但我已經理解Android中已經有類似軟件鍵盤的東西。我在想的一個選擇是使用EditText組件。
我可以使用Canvas渲染軟件鍵盤或EditText組件嗎? EditText和KeyBoardView似乎有方法繪製(畫布畫布)。這是否是正確的做法?我將如何設置繪製組件的座標?
如果這樣做,佈局和一般的外觀和感覺不可能與遊戲的外觀和感覺一致,那會是一個正確的假設嗎? (這意味着我仍然需要自己實現它?)
在此先感謝!
這可能是如何工作,我相信。我不能得到這個工作,因爲我的遊戲本身包含「屏幕」或「視圖」,我需要在其中一個「屏幕」上使用EditText。我得到一個基本上拋出的異常,因爲我試圖從工作線程而不是UI線程中繪製。 – user2832636
在您的活動中,只需將EditText可見性設置爲「不存在」,就可以創建一個偵聽器並將其設置回「可見」,然後在需要時在這些「屏幕」中調用它。 –
我明白了。如果我有幾十個我想用於不同目的的小部件,那麼怎麼樣?我需要在我的Activity中實例化它們,將可見性設置爲Gone並使用偵聽器?這看起來有點笨拙,因爲我希望每個類都爲自己的活動負責,而不是擁有包含所有變量的單個大型類。如果我在openGL中這樣做,我可能根本無法使用這些小部件,但我認爲我的問題有點類似。我有一個不是由UI線程繪製的「屏幕」,我會認爲openGL版本也會有這樣的屏幕? – user2832636