2017-12-13 5 views
1

これらの入力を試しましたが、私の問題は解決しません。私のXMLを見ることができます。任意の提案をお願いします。私はソフトキーボードクラスを拡張しました パブリッククラスSoftKeyboardはInputMethodServiceがKeyboardView.OnKeyboardActionListener、SharedPreferences.OnSharedPreferenceChangeListener { - を実装することを拡張します。どのように最初のキーボードは大文字で始まり、ドットを押すと再びソフトキーボードの大文字で始まる

<?xml version="1.0" encoding="utf-8"?> 
<LatinKeyboardView 
xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+id/urduSimple" 
android:layout_width="fill_parent" 
android:layout_height="wrap_content" 
android:layout_centerHorizontal="true" 
android:adjustViewBounds="true" 
android:alpha="1" 
android:imeOptions="actionSearch" 
android:inputType="textCapSentences" 
android:keyBackground="@drawable/transparent_key_shape" 
android:keyPreviewLayout="@layout/key_preview" 
android:keyPreviewOffset="-4dp" 
android:keyTextColor="@color/White" 
android:paddingTop="4dp" 
android:keyTextSize="28dp" 
android:shadowRadius="0.0" 
android:popupLayout="@layout/keyboard_popup_layout"> 
</LatinKeyboardView> 
Java: 
      case InputType.TYPE_CLASS_TEXT: 
      EditText editor = new EditText(this); 
      editor.setInputType(InputType.TYPE_CLASS_TEXT | 
      InputType.TYPE_TEXT_FLAG_CAP_SENTENCES); 
+0

ステップで達成したいことを説明します。 – ADM

+0

[EditTextの先頭文字の大文字]の可能な複製(https://stackoverflow.com/questions/4808705/first-letter-capitalization-for-edittext) –

+0

Hy ADM私は自分のカスタムキーボードで入力を開始するときに達成したい最初のアルファベットは大文字でなければなりません。 – Ayan

答えて

2

textCapSentencesは、ユーザーが手動でソフトキーボードを小文字に変更しないと機能します。通常の文は、ドットとそれに続くスペースで終わります。このformateでは完全に機能します。ユーザーが手動でキーボードを変更した場合

<EditText 
    android:id="@+id/et" 
    android:layout_width="match_parent" 
    android:inputType="textCapSentences" 
    android:layout_height="wrap_content" /> 

あなたは文章の場合には、再びテキストをギTextWatcherを使用する必要があります。

+0

ありがとうADM私はこのソリューションを試してみましたが、私の問題を解決しません。 – Ayan

+0

テストするデバイスはどれですか?どのAPIレベルで。私はこれがApiレベルに依存するものではないと思うが。 – ADM

+0

アンドロイドバージョン4.4.2 Apiレベル19 – Ayan

関連する問題