যখনই আপনার অ্যাপ একটি মিডিয়া ফাইল চালায়, ব্যবহারকারীদের একটি ভৌত কীবোর্ডে স্পেসবার টিপে প্লেব্যাককে বিরতি এবং পুনরায় শুরু করতে সক্ষম হওয়া উচিত।
কীপ্রেস ইভেন্টে সাড়া দিন
জেটপ্যাক কম্পোজ বা ভিউ এর উপর ভিত্তি করে অ্যাপগুলি কীবোর্ড কী প্রেসে একইভাবে সাড়া দেয়: অ্যাপটি কীপ্রেস ইভেন্ট শোনে, ইভেন্টগুলি ফিল্টার করে এবং স্পেসবার কীপ্রেসের মতো কী-প্রেসগুলিতে সাড়া দেয়।
1. কীবোর্ড ইভেন্টের জন্য শুনুন
রচনা করুন
জেটপ্যাক কম্পোজের সাথে, কীস্ট্রোক পরিচালনা করে এমন লেআউটের মধ্যে হয় onPreviewKeyEvent
বা onKeyEvent
সংশোধক ব্যবহার করুন:
Column(modifier = Modifier.onPreviewKeyEvent { event ->
if (event.type == KeyEventType.KeyUp) {
...
}
...
})
বা
Column(modifier = Modifier.onKeyEvent { event ->
if (event.type == KeyEventType.KeyUp) {
...
}
...
})
ভিউ
আপনার অ্যাপের একটি কার্যকলাপে, onKeyUp()
পদ্ধতিটি ওভাররাইড করুন:
কোটলিন
override fun onKeyUp(keyCode: Int, event: KeyEvent?): Boolean { ... }
জাভা
@Override public boolean onKeyUp(int keyCode, KeyEvent event) { ... }
এই পদ্ধতিটি প্রতিবার একটি চাপা কী রিলিজ করার সময় ব্যবহার করা হয়, তাই এটি প্রতিটি কীস্ট্রোকের জন্য ঠিক একবার ফায়ার হয়।
2. ফিল্টার স্পেসবার প্রেস
কম্পোজ onPreviewKeyEvent
এবং onKeyEvent
সংশোধক পদ্ধতি বা ভিউ onKeyUp()
পদ্ধতির ভিতরে, আপনার মিডিয়া উপাদানে সঠিক ইভেন্ট পাঠাতে KeyEvent.KEYCODE_SPACE
এর জন্য ফিল্টার করুন:
রচনা করুন
Column(modifier = Modifier.onPreviewKeyEvent { event ->
if (event.type == KeyEventType.KeyUp && event.key == Key.Spacebar) {
...
}
...
})
বা
Column(modifier = Modifier.onKeyEvent { event ->
if (event.type == KeyEventType.KeyUp && event.key == Key.Spacebar) {
...
}
...
})
ভিউ
কোটলিন
if (keyCode == KeyEvent.KEYCODE_SPACE) { togglePlayback() return true } return false
জাভা
if (keyCode == KeyEvent.KEYCODE_SPACE) { togglePlayback(); return true; } return false;
মূল পয়েন্ট
-
KEYCODE_SPACE
: স্পেসবারের জন্য কী কোড ধ্রুবক।
রচনা করুন
-
onPreviewKeyEvent
: সংশোধক যা একটি কম্পোনেন্টকে হার্ডওয়্যার কী ইভেন্টগুলিকে আটকাতে সক্ষম করে যখন এটি (বা এর বাচ্চাদের মধ্যে একটি) ফোকাস করা হয়। -
onKeyEvent
:onPreviewKeyEvent
এর অনুরূপ, মডিফায়ার যা একটি কম্পোনেন্টকে হার্ডওয়্যার কী ইভেন্টগুলি আটকাতে সক্ষম করে যখন কম্পোনেন্ট (বা এর বাচ্চাদের মধ্যে একটি) ফোকাস করা হয়।
ভিউ
-
onKeyUp()
: ইভেন্ট হ্যান্ডলার বলা হয় যখন একটি কী প্রকাশ করা হয় এবং একটি ক্রিয়াকলাপের মধ্যে একটি ভিউ (যেমনTextView
) দ্বারা পরিচালিত হয় না।
ফলাফল
আপনার অ্যাপ এখন স্পেসবার কী প্রেসে সাড়া দিতে পারে একটি ভিডিও বা অন্য মিডিয়াকে বিরতি এবং পুনরায় শুরু করতে।