কীবোর্ডের Spacebar ব্যবহার করে মিডিয়া প্লেব্যাক পজ ও আবার চালু করা

চার স্টার রেটিং আইকন

বড় স্ক্রিন অপ্টিমাইজেশনের মধ্যে এক্সটার্নাল কীবোর্ড ইনপুট ম্যানেজ করার ক্ষমতা অন্তর্ভুক্ত, যেমন ভিডিও এবং অন্যান্য মিডিয়া পজ বা আবার চালু করার জন্য Spacebar প্রেস করার মতো অ্যাকশন। এটি বিশেষ করে ট্যাবলেটের জন্য উপযোগী, যা প্রায়শই এক্সটার্নাল কীবোর্ডের সাথে কানেক্ট করা হয় এবং Chromebook-এর জন্য, যা সাধারণত এক্সটার্নাল কীবোর্ডের সাথে আসে তবে ট্যাবলেট মোডে ব্যবহার করা যেতে পারে।

উইন্ডোতে শুধু মিডিয়া থাকলে (যেমন, ফুল-স্ক্রিন ভিডিও প্লেব্যাক), Jetpack Compose-এ স্ক্রিন লেভেলে কীপ্রেস ইভেন্টে রেসপন্স করুন।

পেশাদার পদ্ধতি

আপনার অ্যাপ যখনই কোনও মিডিয়া ফাইল চালায়, ব্যবহারকারীদের ফিজিক্যাল কীবোর্ডের স্পেসবার প্রেস করে প্লেব্যাক পজ ও আবার চালু করার সুবিধা দিতে হবে।

উপাদান

  • KEYCODE_SPACE: স্পেসবারের জন্য কী কোড কনস্ট্যান্ট।
  • onPreviewKeyEvent: Modifier যা কোনও কম্পোনেন্টকে (বা তার কোনও চাইল্ড) ফোকাস করা হলে হার্ডওয়্যার কী ইভেন্ট ইন্টারসেপ্ট করতে সক্ষম করে।
  • onKeyEvent: onPreviewKeyEvent-এর মতো, এই Modifier কোনও কম্পোনেন্টকে (বা তার কোনও চাইল্ড) ফোকাস করা হলে হার্ডওয়্যার কী ইভেন্ট ইন্টারসেপ্ট করার সুবিধা দেয়।

ধাপ

Jetpack Compose-এ কীবোর্ড কী প্রেসের উত্তর দিতে, আপনার অ্যাপকে অবশ্যই কীপ্রেস ইভেন্ট শুনতে হবে, ইভেন্ট ফিল্টার করতে হবে এবং স্পেসবার কীপ্রেসের মতো বেছে নেওয়া কীপ্রেসে উত্তর দিতে হবে।

১. কীবোর্ড ইভেন্টের জন্য শুনুন

Jetpack Compose-এর মাধ্যমে, আপনি কিস্ট্রোক ম্যানেজ করে এমন কম্পোনেন্টের মধ্যে onPreviewKeyEvent অথবা onKeyEvent মডিফায়ার ব্যবহার করতে পারবেন।

দুটি মডিফায়ারের মধ্যে প্রধান পার্থক্য হল, মডিফায়ার ইভেন্টটি ব্যবহার না করলে সেটি কোথায় পাঠানো হবে:

  • onPreviewKeyEvent — ইভেন্টটি তার প্রথম চাইল্ডে পাঠায়।
  • onKeyEvent — কম্পোজেবলের পেরেন্টকে ইভেন্ট ডিসপ্যাচ করে।

২. স্পেসবার প্রেস ফিল্টার ও ম্যানেজ করুন

onPreviewKeyEvent বা onKeyEvent মডিফায়ার ল্যাম্বডার মধ্যে, কী ইভেন্টের জন্য ফিল্টার করুন যেখানে কী রিলিজ (KeyEventType.KeyUp) স্পেসবারের (Key.Spacebar) সাথে মেলে।

আপনার কোড ইভেন্টটি ম্যানেজ করলে এবং আপনি ইভেন্টটি আরও প্রচার করতে না চাইলে true রিটার্ন করুন। অন্যান্য কম্পোনেন্টকে ইভেন্ট ম্যানেজ করার অনুমতি দিতে false রিটার্ন করুন।

  • বিকল্প ক: onPreviewKeyEvent ব্যবহার করে

    Column(
        modifier = Modifier.onPreviewKeyEvent { event ->
            if (event.type == KeyEventType.KeyUp && event.key == Key.Spacebar) {
                // Handle spacebar keypress to pause/resume playback.
                true
            } else {
                false
            }
        }
    ) {
        // Content
    }

  • বিকল্প খ: onKeyEvent ব্যবহার করে

    Column(
        modifier = Modifier.onKeyEvent { event ->
            if (event.type == KeyEventType.KeyUp && event.key == Key.Spacebar) {
                // Handle spacebar keypress to pause/resume playback.
                true
            } else {
                false
            }
        }
    ) {
        // Content
    }

ফলাফল

আপনার অ্যাপ এখন স্পেসবার কী প্রেস করার মাধ্যমে ভিডিও বা অন্যান্য মিডিয়া পজ ও আবার চালু করতে পারবে।

অতিরিক্ত রিসোর্স

কীবোর্ড ইভেন্ট এবং কীভাবে সেগুলি ম্যানেজ করতে হয় সে সম্পর্কে আরও জানতে, কীবোর্ড ইনপুট ম্যানেজ করুন দেখুন।