2012-11-08 3 views
3

방금 ​​Eclipse (API 버전 16의 샘플 코드도 있지만 이전 버전도 사용)에서 sdk softkeyboard를 가져 와서 내 장치 (Galaxy Note 10.1, Galaxy S2 및 Galaxy Nexus)에 설치했습니다. 몇 가지 테스트를 마친 후 이상한 행동을 발견했습니다. 맨 위에있는 키를 누르면 키보드가 내가 실제로 누른 문자 위에있는 문자의 제안을 보여줍니다. 현재 연구를 위해 소프트 키 보드를 구현하고 몇 가지 기능을 추가해야합니다. 그러나 이러한 기능을 위해서는 정확한 키보드가 필요합니다.Androids sdk softkeyboard 정확도

문제를 확인하고 해결 방법을 제안 할 수 있습니까?

대단히 감사합니다.

답변

5

검색 시간이 지나면 마침내 내 문제에 대한 해결책을 찾았습니다. 내 문제를 해결하기 위해

<item name="android:verticalCorrection">-10dip</item> 

:

안드로이드 샘플 키보드 I가 Widget.KeyboardView

<style name="Widget.KeyboardView" parent="android:Widget"> 
    <item name="android:background">@android:drawable/keyboard_background</item> 
    <item name="android:keyBackground">@android:drawable/btn_keyboard_key</item> 
    <item name="android:keyTextSize">22sp</item> 
    <item name="android:keyTextColor">#FFFFFFFF</item> 
    <item name="android:keyPreviewLayout">@android:layout/keyboard_key_preview</item> 
    <item name="android:keyPreviewOffset">-12dip</item> 
    <item name="android:keyPreviewHeight">80dip</item> 
    <item name="android:labelTextSize">14sp</item> 
    <item name="android:popupLayout">@android:layout/keyboard_popup_keyboard</item> 
    <item name="android:verticalCorrection">-10dip</item> 
    <item name="android:shadowColor">#BB000000</item> 
    <item name="android:shadowRadius">2.75</item> 
</style> 

의 정의를 볼 수있는 안드로이드 소스에서 KeyboardView 에서 상속 KeyboardViewStyle 내가 다음 줄을 발견 사용 Widget.KeyboardView에서 상속받은 자신의 스타일을 정의하고 android:verticalCorrection을 다음과 같이 덮어 썼습니다.

<style name="Widget.MyKeyboardView" parent="android:Widget.KeyboardView"> 
    <item name="android:verticalCorrection">0dip</item> 
</style> 

결국에는 키보드에 스타일을 적용했습니다.

등함으로써 해결할 수 :

+0

더 자세히 방법을 추가 주실 래요 (어떤 파일, 어떤 절) 당신은 당신의 키보드에 스타일을 적용합니다. 내 자신의 keybaord는 기본 스타일을 사용하므로 따라야 할 모델이 없습니다. –