mortezamosavi@yahoo.com
تخم مرغ شانسی(مشابه ایرنسل من)
دوستان حتماً شما اگه ایرانسلی باشید و با برنامه ایرانسل من آشنا باشید حتماً با بخش تخم مرغ شانسی کار کردید و حتماً به این فکر کردید که این بخش چجوری ساخته شده!
امروز قصد دارم طریقه پیاده سازی همچین چیزی رو آموزش بدم. سورسشم در آخر متن گذاشتم که خواستید راحت به پروژتون اضافه کنید؛ اگر مایل بودید ادامه مطلب رو دنبال کنید. ?
خب در اول کار
باید این مورد رو بدونید که این بحث کنترل لرزش تلفن همراه مربوط به سنسور گوشی میشه؛ خب ادامه میدیم. ما برای مدیریت این لرزش یک کلاس با نام shake.java که از SensorEventListener ارث بری شده میسازیم(دقت کنید که کلاس SensorListener منسوخ شده).
کدهای زیر رو به کلاستون اضافه کنید؛ خط اول و دوم مربوط به حداقل میزان و زمان لرزش هست، خط سوم مربوط به حداکثر زمان مکث بین لرزش هاست، خط چهارم مربوط به حداکثر زمان برای لرزش هست:
ما برای اینکه در کلاس اکتیوتی اصلیمون(همون ماین) عملیاتی رو به پاسخ لرزش بدیم یک اینتر فیس برای انجام عملیات مینویسم و ازش یک شئ با نام onShakeListener میسازیم مانند زیر:
خب حالا در متد onSensorChanged که متد اصلی کلاسمون هست متغییرهایی رو با نامهای x، y، z میسازیم و مقدارشون رو وضعیت سنسور پر میکنیم و لرزش رو محاسبه میکنیم:
سپس اگه میزان لرزش از حد معمول بیشتر بود موارد زمان لرزش، اطلاعات لرزش و تعداد لرزش رو ذخیره میکنیم، اگر که لرزش خیلی کم بود که هیچ و کل مقادیر صفر میشه:
خب دوستان کل کدهای کلاس shake به این صورت هست و از این لینک میتونید دریافتش کنید:
کد های اکتیونتی اصلی هم به این صورت هست(ولی موردی رو در نظر داشته باشید که سنسور رو حتماً در غیرفعال کنید تا منابع سخت افزاریتون الکی درگیر نشه)
امید وارم مورد استفادتون قرار بگیره و اینم بگم که از سایتم کش رفتم :)
مطلبی دیگر از این انتشارات
معرفی اولیه ViewPager 2
مطلبی دیگر از این انتشارات
پنج مهارت برتر برای یک برنامهنویس موفق
مطلبی دیگر از این انتشارات
ایجاد استایل برای TabLayout در اندروید استودیو