2012-04-13 43 views
0

我擁有美國鍵盤底座的華碩變壓器(第一款)。Android:爲硬件鍵盤編寫自己的「處理程序」?

但是,我是法國人,因此必須定期進行法語互動,其中包括寫重音字母。

據我所知,目前的解決方法是基本上彈出軟鍵盤,不是很方便。

能夠用傳統QWERTY佈局編寫重音符號(以及其他特殊字母,例如ß)的一種實現是Mac OS X中使用的一種實現方式。對於不知道的用戶,可以通過按alt + a-key-which-usually-makes-a-lot-of-sense(我不是在開玩笑,他們真的有道理),這會給你重音,然後你想要重音的字母(所以alt + e,那麼e會給你é)。

這就是我想要實現的行爲。但是,我真的不知道我該怎麼做。

我查看了關於鍵盤設備的文檔(http://source.android.com/tech/input/keyboard-devices.html),但我不認爲這是做任何更改的正確位置,因爲我不想更改任何鍵盤映射或鍵碼。

另一方面,我瞥了一眼https://github.com/android/platform_frameworks_base/tree/master/core/java/android/inputmethodservice(特別是keyboard.java和keyboardview.java),但我的印象是這與軟件鍵盤更相關。

有沒有人有更多的線索呢?

謝謝

回答

2

我在TF101上輸入俄語字符有類似的問題。我更習慣於拼音佈局而不是標準佈局。

我能夠修改Android示例應用程序SoftKeyboard來完成該操作。你可以在https://protronika.dyndns.org/websvn/listing.php?repname=FLEXKBD&path=%2F&sc=0找到代碼。

對不起,代碼是非常原始的許多硬編碼的東西。我最近剛開始這個項目。所以它處於「正常工作」狀態。

+0

該鏈接現在需要密碼。你可以在公共場所分享嗎? – pfalcon 2013-08-31 06:27:01