วันพฤหัสบดีที่ 19 มิถุนายน พ.ศ. 2557

ၵေႈၶူတ်ႉ kamjingkeyboard.java

မိူဝ်ႈတွၼ်ႈ 19 ၼၼ်ႉပဵၼ်လၢႆးၵေႈၶူတ်ႉ xml ပိူၼ်ႈႁွင်ႈဝႃႈမၼ်းပဵၼ် Activity ဢၼ်တူဝ်ႈတွပ်ႇၽူႈၸႂ်ႉၵမ်းသိုဝ်ႈ
ၸိူင်ႉၼင်ႇႁဝ်းတႅမ်ႈ ႁဝ်းၶီးသင်လူင်းၵႂႃႇၼႆၵေႃႈမၼ်းတေတွပ်ႇပၼ်ႁဝ်း မိူၼ်ႁဝ်းယၵ်ႉႁၼ်ၶီးၿွတ်ႇပဵၼ်ႁၢင်ႈ
တူဝ်လိၵ်ႈသင်သင်ၼၼ်ႉၶႃႈ ၵူၺ်းၵႃႈဢၼ်လမ်ႇလွင်ႈပႃႈလင်မၼ်းႁဵတ်းၵၢၼ်ၼၼ်ႉၸမ်ႉ ပဵၼ်ၶူတ်ႉ java
ဢၼ်တေပႂ်ႉသင်ႇႁႂ်ႈပြူဝ်းၵြႅမ်းလႆႈႁူႉၸၵ်းၼၼ်ႉႁဵတ်းၵၢၼ်ပၼ် ၶႃႈၵေႃႈတေလၢတ်ႈၸွမ်းၼင်ႇပွင်ႇၸႂ်ၼၼ်ႉ
ၶႃႈ ၵွပ်ႈဝႃႈၶႃႈၵေႃႈဢမ်ႇယၢမ်ႈႁဵၼ်းလွင်ႈၵၢၼ်တႅမ်ႈၶူတ်ႉၼႆႉမႃးသေပွၵ်ႈလၢတ်ႈသိုဝ်ႈသိုဝ်ႈဝႃႈပဵၼ်ၵူၼ်းမိုဝ်း
လူၼ်းၵေႃႉၼိုင်ႈၵူၺ်း မၼ်းသၢင်ႇထုၵ်ႇၵႂႃႇမႅၼ်ႈမဵဝ်းမၼ်း ဢဝ်ၸပ်းတူဝ်ပဵၼ်တၢင်းႁူႉၵႂႃႇၼၼ်ႉၶႃႈ တွၼ်ႈတႃႇ
တွၼ်ႈ 20ၼႆႉၶႃႈတေသႂ်ႇဝႆႉလၢႆးၵေႈၶူတ်ႉမၼ်းၵမ်းဢိတ်း ၵွပ်ႈဝႃႈႁဝ်းတေလႆႈဢမ်ႇၵႂင်ၵွပ်ႈဝႃႈပေႃးပိူၼ်ႈၸႃႉ
 ဢၼ်လူင်ႉလႅၼ်ႇၼၼ်ႉမႃးလၢတ်ႈၼေႁဝ်း ႁဝ်းၸႃႉဢၼ်ဢမ်ႇယၢမ်ႈႁဵတ်း ယၢမ်ႈတႅမ်ႈၶူတ်ႉသေပွၵ်ႈၼၼ်ႉ
တေဢမ်ႇၵႂႃႇလႆႈ တေဢမ်ႇပွင်ႇၸႂ် လၢတ်ႈငၢႆႈငၢႆႈဝႃႈ step by step ၼၼ်ႉၶႃႈ ။

လၢႆးမၼ်း ႁဝ်းၶဝ်ႈၵႂႃႇတီႈ folder src ၵႂႃႇတီႈ kamjingKeyboard.java သင်ၽႂ်တၢင်ႇၸိုဝ်ႈတၢင်ႇမဵဝ်းၼႆ
ၵေႃႈတူၺ်းလီလီၶႃႈ ၵမ်းတေၽိတ်းတီႈမၼ်း၊ ႁဝ်းတေၶဝ်ႈၵႂႃႇထႅင်ႈၶူတ်ႉတၢင်းၼႂ်းမၼ်း ႁႂ်ႈ project android
ႁူႉၸၵ်းဝႃႈမီး taikeyboard, လႄႈ taishiftenkeyboard ဢၼ်ပဵၼ် file xml ယူႇၼႂ်းၶူင်းၵၢၼ် project
ႁဝ်းယဝ်ႈ ။

တီႈ static final boolean process_hard_keys = true;
တႂ်ႈႁူဝ်ထႅဝ်
private LatinKeyboard = mQwertyKeyboard;
private LatinKeyboard = mSymbolsKeyboard;

ႁႂ်ႈထႅင်ႈသႂ်ႇၶူတ်ႉလူင်းၵႂႃႇ ၼင်ႇႁိုဝ် project android keyboard ႁဝ်းတေႁူႉၸၵ်း
private LatinKeyboard = mTaikeyboard;
private LatinKeyboard = mTaiShiftedKeyboard;

သင်ဝႃႈဢမ်ႇႁူႉတီႈမၼ်းၼႆၵေႃႈ တူၺ်းဢဝ်ၸွမ်း clip video youtube ၶႃႈႁဝ်းဢဝ်မႃးပွႆႇဝႆႉၼႆႉၸွမ်းၶႃႈ
 

ၵမ်းၶႃႈတေဢဝ်ထႅင်ႈသႂ်ႇဝႆႉတိၵ်းတိၵ်းၶႃႈလၢႆးၵေႈၶူတ်ႉမၼ်း ။ 

ပေႃးလႆႈတၢင်းသုင်ယဝ်ႉၼၼ်ႉ ၵမ်းၼႆႉလိူၼ်ႈလူင်းမႃးထႅင်ႈသွၵ်ႈႁႃၶူတ်ႉၼႆႉထႅင်ႈ
 @Override public void onInitializeInterface() {
        if (mQwertyKeyboard != null) {
            // Configuration changes can happen after the keyboard gets recreated,
            // so we need to be able to re-build the keyboards if the available
            // space has changed.
            int displayWidth = getMaxWidth();
            if (displayWidth == mLastDisplayWidth) return;
            mLastDisplayWidth = displayWidth;
        }
        mQwertyKeyboard = new LatinKeyboard(this, R.xml.qwerty);
        mQwertyShiftedKeyboard = LatinKeyboard(this, R.xml.qwerty_shift);
        mSymbolsKeyboard = new LatinKeyboard(this, R.xml.symbols);
        mSymbolsShiftedKeyboard = new LatinKeyboard(this, R.xml.symbols_shift);

ထႅင်ႈၶူတ်ႉလူင်းၵႂႃႇထႅင်ႈၸိူင်ႉၼႆၶႃႈ။
        mTaiKeyboard = new LatinKeyboard(this, R.xml.tai_kb);
        mTaiShiftedKeyboard = LatinKeyboard(this, R.xml.tai_kb_shift);
    }

တေလႆႈမိူၼ်ၼႆၶႃႈ။

ၵမ်းၼႆႉသွၵ်ႈႁႃထႅင်ႈႁူဝ်ၶေႃႈ။
 private void handleShift()

လၢႆးသွၵ်ႈႁႃၼႆၵေႃႈ တဵၵ်းတုမ်ႇ ctrl + f ပေႃႉ private void handleShift() ၼႂ်းလွၵ်းသွၵ်ႈႁႃၼၼ်ႉတေႁႃ ႁၼ်ငၢႆႈၶႃႈ။

ထႅင်ႈၶူတ်ႉလူင်းၵႂႃႇတၢင်းတႂ်ႈၼၼ်ႉၸိူင်ႉၼႆၶႃႈ။
} else if (currentKeyboard == mTaiKeyboard) {
            mTaiKeyboard.setShifted(true);
            mInputView.setKeyboard(mTaiShiftedKeyboard) ;
            mTaiShiftedKeyboard.setShifted(true) ;
        } else if (currentKeyboard == mTaiShiftedKeyboard) {
        mTaiShiftedKeyboard.setShifted(false) ;
        mInputView.setKeyboard(mTaiKeyboard) ;
        mTaiKeyboard.setShifted(false);

တူၺ်းၶႅပ်းႁၢင်ႈဢၼ်လႆႈထႅင်ႈယဝ်ႉၼႆႉတေႁၼ်မိူၼ်ၼႆ။

ၵမ်းၼႆႉဢုပ်ႇလႆႈဝႃႈၵေႈၶူတ်ႉ java ၼႂ်းၶီးၿွတ်ႇႁႂ်ႈ project android ႁူႉၸၵ်းၶီးၿွတ်ႇႁဝ်းယဝ်ႉၶႃႈ ၵူၺ်းၵႃႈပႆႇ ယဝ်ႉၼၼ်ႉ မၼ်းယင်းပႆႇမီးတုမ်ႇၼဵၵ်းတႃႇၵႂႃႇၸူးၶီးၿွတ်ႇႁဝ်းၼၼ်ႉၶႃႈ ႁဝ်းတေလႆႈထႅင်ႈၶူတ်ႉလူင်းၵႂႃႇထႅင်ႈ ၼင်ႇႁိုဝ်မၼ်း ပုင်ႇတႅၵ်ႈမၼ်းၼႆၵေႃႈ ပေႃးတဵၵ်းတုမ်ႇ Eng/tai ႁႂ်ႈမၼ်းၵျွၵ်းၵႂႃႇၸူးၶီးၿွတ်ႇတႆး ပေႃးတဵၵ်း Eng ႁႂ်ႈမၼ်းၵျွၵ်းမႃးႁႃလွၵ်းမိုဝ်းၶီးၿွတ်ႇဢင်းၵိတ်းၼၼ်ႉၶႃႈ။

ႁဝ်းတေလႆႈထႅင်ႈၶူတ်ႉလူင်းၵႂႃႇထႅင်ႈ ႁႂ်ႈသွၵ်ႈႁႃၸိူင်ႉၼႆ public void onKey(int primaryCode, int[] keyCodes) ဢမ်ႇၼၼ်ၵေႃႈတဵၵ်း crlt + f တေသွၵ်ႈႁၼ်ငၢႆႈၶႃႈ။

ၵမ်းၼႆႉၵေႃႈပေႃႉၽိုတ်ႉၸိမ်လူင်းၵႂႃႇထႅင်ႈတႂ်ႈၼႆႉ
 } else if (primaryCode == Keyboard.KEYCODE_ALT
                && mInputView != null) {
            Keyboard current = mInputView.getKeyboard();
            if (current == mTaiKeyboard || current == mTaiShiftedKeyboard) {
                current = mQwertyKeyboard;
            } else {
                current = mTaiKeyboard;
            }
            mInputView.setKeyboard(current);
            if (current == mTaiKeyboard) {
                current.setShifted(false);

တေႁၼ်မိူၼ်ၼႆၶႃႈ။


ၵမ်းၼႆႉတေႉယဝ်ႉလွင်ႈၵၢၼ်ၵေႈၶူတ်ႉယဝ်ႉၶႃႈ။