6.日本語キーボードを利用する

Tapia

TAPIAから文字を入力したい場合、「日本語キーボード」を利用して入力することができます。

1) 日本語キーボードクラスを作成する

tapia-sample\app\src\main\java\com.tapia.mji.demo\Activity直下へ「JapaneseKeyBoard」クラスを作成する。
public class JapaneseKeyBoard extends JapaneseKeyboardActivity {
    SharedPreferences sharedPreferences;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        sharedPreferences = getSharedPreferences("data", MODE_PRIVATE);
        String registerName = sharedPreferences.getString("name", null);
        if(registerName != null) {
            setText(registerName);//画面へ表示
        }
    }
    @Override
    public void onEnter(String s) {
        sharedPreferences.edit().putString("name", s).apply();  //入力した文字をsharedPreferncesへ保存
        finish();
    }
    @Override
    public String setHintText() {
        return "入力";
    }
}; 

2) PhotoMenuActivityにメニューアイテムを追加する

setMenuListメソッドへMenuItemを追加する。
public class PhotoMenuActivity extends MenuActivity {               
    static final int TALK = 3;
    static final int SLEEP = 2;     
    ...            
    static final int KeyBoard = 9;//追加します。 
    
    @Override
    public ArrayList setMenuList() {
        ArrayList menuItems = new ArrayList<>();
        menuItems.add(new MenuItem(TALK, "TALK"));
        menuItems.add(new MenuItem(SLEEP, "Sleep"));//add item with an id to easily find it.
      ... 
        //Can also adjust the size of the text to make it fit in the bubble
        menuItems.add(new MenuItem(SHOW_PHOTO, "show my photo", 16));
        menuItems.add(new MenuItem(KeyBoard, "KeyBoard", 16));//追加します。 
        return menuItems;
        }

3) PhotoMenuActivityにstartActivityを追加する

onItemClickメソッドへstartActivityを追加する。
    @Override
    public void onItemClick(MenuItem item) {
        switch (item.id){
            case TAKE_PHOTO:
                startActivity(new Intent(TapiaApp.getAppContext(),PhotoTakeActivity.class));
                break;
            case SHOW_PHOTO:
                startActivity(new Intent(TapiaApp.getAppContext(),PhotoShowActivity.class));
                break;
            case TALK:
                startActivity(new Intent(TapiaApp.getAppContext(),TalkActivity.class));
                break;
            case SLEEP:
                finish();
                break;
            case KeyBoard:
                startActivity(new Intent(TapiaApp.getAppContext(),TestJapaneseKeyBoard.class));//追加します。
                 break;
                }}

4) AndroidManifests.xmlへ作成したJapaneseKeyBoardActivityを追加する

applicationタグへActivityを追加する。
activity android:configChanges="locale" android:screenOrientation="landscape" android:name=".Activities.JapaneseKeyBoardActivity"
                    

5) 送信ボタンの名称を変更する

日本語キーボードクラスの「onCreate」メソッドへ以下を追加します。「例:送信から実行へ変更」
enter.setText("実行");
                    

© 2018 - MJI Inc. Copyright reserved -