ফোকাস সরিয়ে দিন

FocusManager আপনাকে দিকনির্দেশকভাবে ফোকাস সরাতে বা এটি সম্পূর্ণভাবে মুছে ফেলতে দেয়। সরাসরি কম্পোনেন্ট টার্গেট করার জন্য FocusRequester ব্যবহার করুন (প্রোগ্রাম্যাটিক্যালি ফোকাস করার অনুরোধ করুন দেখুন)।

FocusManager-এর সাহায্যে দিকনির্দেশক ফোকাস মুভমেন্ট

প্রোগ্রাম্যাটিক্যালি কোনও আপেক্ষিক দিকে ফোকাস সরাতে:

  1. LocalFocusManager.current ব্যবহার করে FocusManager ইনস্ট্যান্স পান।
  2. FocusDirection ভ্যালু (Next, Previous, Up, Down, Left, Right, Enter, অথবা Exit) সহ moveFocus() কল করুন।

val focusManager = LocalFocusManager.current

Button(
    onClick = {
        focusManager.moveFocus(FocusDirection.Next)
    }
) {
    Text("Next Field")
}

ফোকাস সরিয়ে দিন

বর্তমানে যে এলিমেন্টে ফোকাস আছে সেখান থেকে ফোকাস সরাতে (যেমন, ব্যবহারকারী Esc কী প্রেস করলে), clearFocus() কল করুন:

val focusManager = LocalFocusManager.current

Box(
    modifier = Modifier.onPreviewKeyEvent { keyEvent ->
        if (keyEvent.key == Key.Escape && keyEvent.type == KeyEventType.KeyUp) {
            focusManager.clearFocus()
            true
        } else {
            false
        }
    }
)

clearFocus() ফাংশন একটি ঐচ্ছিক force: Boolean = false প্যারামিটার গ্রহণ করে:

  • force = false (ডিফল্ট): ফোকাস লক মেনে চলে এবং অ্যাক্টিভ কম্পোনেন্ট ফোকাস ক্যাপচার করলে ফোকাস মুছে দেয় না।
  • force = true: কোনও কম্পোনেন্ট ফোকাস ক্যাপচার করলেও, শর্তহীনভাবে ফোকাস সরিয়ে দেয়।