অ্যান্ড্রয়েড অনস্ক্রিন কীবোর্ডের জন্য ডোন কী প্রেস সনাক্ত করে


111

Doneঅনস্ক্রিন কীবোর্ডের কীটি টিপানো হয়েছিল তা সনাক্ত করা সম্ভব ?

উত্তর:


276

হ্যা এটা সম্ভব:

editText = (EditText) findViewById(R.id.edit_text);

editText.setOnEditorActionListener(new TextView.OnEditorActionListener() {
    @Override
    public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
        if (actionId == EditorInfo.IME_ACTION_DONE) {
            // do your stuff here
        }
        return false;
    }
});

মনে রাখবেন যে আপনাকে নিম্নলিখিত গ্রন্থাগারগুলি আমদানি করতে হবে:

import android.view.KeyEvent;
import android.view.inputmethod.EditorInfo;
import android.widget.TextView;

আপনাকে ধন্যবাদ, আপনি আমাকে একটি দুর্দান্ত সূচনা পয়েন্ট দিয়েছেন। EditorInfo.IME_ACTION_SEARCHপরিবর্তে আমাকে লেন্স অনুসন্ধান-বোতামের জন্য ব্যবহার করতে হবে।
টেকনাইকুইস্ট

হাই, বাটারনিফ দিয়ে কি এটি সম্ভব? @ মাইকায়োওয়ারস্কি @ জাজোলসবিরেসজ
মৌলিক

1
আপনি butterknife এর @OnEditorAction () ব্যবহার করতে পারেন @MaulikDodia
Ridcully

তোমাকে ধন্যবাদ. আমি এটি দিয়ে @ রিডকুলি দিয়ে যাব
মৌলিক দোদিয়া

3

যখন আপনার অ্যান্ড্রয়েড অ্যাপ্লিকেশনটিতে কোনও ধরণের ব্যবহারকারীর ইনপুট নিয়ে কাজ করতে হয় তখন একটি সম্পাদক তথ্য সবচেয়ে কার্যকর বর্গ। যেমন লগইন / নিবন্ধকরণ / অনুসন্ধান ক্রিয়াকলাপগুলিতে আমরা আরও সঠিক কীবোর্ড ইনপুট জন্য এটি ব্যবহার করতে পারি। একটি সম্পাদক তথ্য শ্রেণি পাঠ্য সম্পাদনা অবজেক্টের জন্য কয়েকটি বৈশিষ্ট্য বর্ণনা করে যে কোনও ইনপুট পদ্ধতি সরাসরি পাঠ্য সামগ্রী সম্পাদনা করার সাথে যোগাযোগ করবে।

আপনি IME_ACTION_DONE দিয়ে চেষ্টা করতে পারেন ।

এই ক্রিয়াটি Doneইনপুট না করার জন্য একটি ক্রিয়া সম্পাদন করে এবং এটি IMEবন্ধ হয়ে যাবে।

SetOnEditorActionListener ব্যবহার করে

EditTextObj.setOnEditorActionListener(new TextView.OnEditorActionListener() {
    @Override
    public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
        boolean handled = false;
        if (actionId == EditorInfo.IME_ACTION_DONE) {
            /* Write your logic here that will be executed when user taps next button */
            handled = true;
        }
        return handled;
    }
});

কাস্টম কীবোর্ড দিয়ে কীভাবে একই সমস্যা পরিচালনা করবেন?
গাজু কলুর

0

বাটারকনিফ ব্যবহার করে আপনি এটি করতে পারেন

@OnEditorAction(R.id.signInPasswordText)
boolean onEditorAction(TextView v, int actionId, KeyEvent event){
    if (actionId == EditorInfo.IME_ACTION_DONE || event.getKeyCode() == KeyEvent.KEYCODE_ENTER) {
        /* Write your logic here that will be executed when user taps next button */
    }
    return false;
}
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.