2014-03-02 47 views
0

我試圖做一個鍵盤,就像原來的Android鍵盤一樣。我的鍵盤上的按鍵只是簡單的按鈕,圖像作爲背景。 我注意到,與原來的鍵盤相比,在我的鍵盤上輸入要困難得多。似乎有這樣的東西作爲一個公差:Android鍵盤 - 容差

http://i.imgur.com/fdMgaPX.png

如果你打紅點。如果你打的藍點,你會得到一個U或一個J.還有就是你會得到一個A.從字面上看,沒有一點你可以在不寫信的情況下點擊。在我的鍵盤上,這發生了很多,雖然看起來相同,鍵之間的距離相等。有誰知道如何獲得這個或有任何關於此功能的更多信息?

謝謝!

回答

0

這取決於您是否將Button類用於您的密鑰。如果是這樣,就沒有辦法來定義你所說的容差。

爲了避免這種情況,我創建了一個類Key擴展視圖或TextView。這將不那麼簡單,因爲您必須自己定義背景,字體大小;但它會更加靈活,因爲你可以創建一個比按鈕小一點的定製hitbox(並由Rect定義)。例如,你的按鈕尺寸小於5dp的邊距。

然後在onTouchEvent中,我會檢查手指位置是否在hitbox內。如果不是,只需返回給調用者。