کتاب آموزش ساخت اپلیکیشن دو به دو در اندروید استودیو

کتاب آموزش ساخت اپلیکیشن دو به دو در اندروید استودیو


کتاب آموزش ساخت اپلیکیشن دو به دو در اندروید استودیو نوشتۀ محمود خاوریان، شامل دو فصل است. در فصل اول، روش ایجاد صفحه انتخاب دسته‌بندی تصاویر آموزش داده شده و فصل دوم به طور کامل به صفحه اصلی بازی اختصاص دارد؛ جایی که در آن، رابط کاربری بازی را ایجاد کرده و منطق بازی را کدنویسی می‌کنیم.

در این اپلیکیشن، با کامپوننت GridView برای نمایش آیتم‌های دسته‌بندی تصاویر در قالب شبکه‌ای و جدولی آشنا می‌شوید و یک کلاس آداپتر سفارشی برای پر کردن آن ایجاد می‌کنید. دکمه‌هایی که در صفحه بازی به کار گرفته می‌شوند، ImageButton می‌باشند. دسته‌بندی تصاویر در قالب پوشه‌های مجزا در پوشه assets پروژه قرار گرفته و در کدنویسی، با روش دسترسی به آن‌ها آشنا خواهید شد.

بسیاری از شما با اپلیکیشن "دو به دو" آشنا می‌باشید. حالا ممکن است سازندگان آن را با نام دیگری منتشر کرده باشند یا شما با نام دیگری آن را بشناسید. در این اپلیکیشن، چند تصویر به صورت زوج و به طور پراکنده در ساختاری شبکه‌ای (جدولی) قرار می‌گیرند و در ابتدا در حالت پنهان شده می‌باشند. با کلیک کردن روی هر دکمه، یکی از تصاویر، نمایش داده شده و با کلیک کردن روی دکمه بعد، تصویر مربوط به آن دکمه نیز نمایش داده می‌شود. در صورتی که هر دو تصویر نمایش داده شده یکسان باشند، یعنی کاربر به درستی جای یک زوج از چند زوج تصویر را پیدا کرده است. با موفقیت در پیدا کردن تصاویر مشابه، آن دو تصویر پس از اجرا شدن انیمیشنی ساده روی آن‌ها به صورت ثابت نمایش داده می‌شوند. در صورتی که تصویر دو دکمه فشار داده شده مشابه هم نباشند، پس از مدت زمان کوتاهی هر دو تصویر مجدداً پنهان می‌شوند. حال کاربر باید دکمه‌های دیگر را تست کند. با حدس اشتباه دو دکمه و نمایش دو تصویر مربوطه به مدت کوتاه، کاربر باید جای دو تصویر به نمایش درآمده را به خاطر بسپارد تا در حدس‌های بعد بتواند از آن‌ها استفاده کند. در صورتی که مکان تمام زوج تصاویر مشابه پیدا شود، بازی تمام شده و بازیکن برنده است. در این اپلیکیشن تعداد زیادی تصویر را می‌توان انتخاب کرد و در دسته بندی‌های مختلف قرار داد، برای مثال، تصاویر طبیعت، خودرو، شخصیت‌های سینمایی، گل، وسایل خانگی، پرچم کشورها و...

برای آشنایی با پخش صدا در اپلیکیشن، دو نوع صدای مختلف در این اپلیکیشن پخش می‌شود. یکی از آن‌ها صدای کوتاهی است که هنگام مشابه بودن تصویر دو دکمه انتخاب شده پخش می‌شود. صدای دوم هم هنگامی که بازیکن تمام تصاویر مشابه را پیدا کند، پخش خواهد شد.

برای ایجاد فهرست یا لیستی از انواع دسته بندی‌های مختلف تصویر، کامپوننت‌های زیادی مانند ListView، RecyclerView و... وجود دارد. در این اپلیکیشن از کامپوننت GridView استفاده شده است که آیتم‌ها را در قالب جدول کنار هم قرار می‌دهد. پس از انتخاب کردن هر آیتم که یکی از دسته بندی‌های تصاویر می‌باشد، Activity جدیدی ایجاد شده و در آن، پس از ایجاد یک لیست از نام تصاویر، 16 کامپوننت ImageButton در قالب چهار ردیف و در هر ردیف، چهار ستون قرار می‌گیرند. فعلاً قرار نیست تصویری از دسته بندی انتخاب شده برای دکمه‌ها نشان داده شود، بنابراین یک تصویر ساده در نظر گرفته شده که روی تمام ImageButton‌ها نمایش داده می‌شود. در ادامه، 8 تصویر دسته بندی انتخاب شده از پوشه assets دریافت شده و در لیست ایجاد شده قرار می‌گیرند. این کار برای هر تصویر دو بار انجام می‌شود تا در نهایت، 16 تصویر داشته باشیم. سپس توسط یک حلقه تکرار هرکدام از تصاویر به یکی از ImageButton‌ها نسبت داده می‌شوند. یک Listener کلیک شدن نیز برای هر ImageButton اضافه می‌شود تا به کلیک شدن‌ها گوش دهد. بیشتر کار اپلیکیشن در این متد Listener انجام می‌شود؛ جایی که در آن، تعداد کلیک‌ها بررسی شده و در صورتی که اولین کلیک کاربر باشد، تصویر دکمه کلیک شده نمایش داده می‌شود. شمارش کلیک‌ها توسط یک متغیر عددی انجام می‌شود. در صورتی که کاربر برای دومین بار است که کلیک می‌کند، تصویر دکمه دوم نیز نمایش داده شده و مشابهت یا عدم مشابهت تصویر دو دکمه کلیک شده از طریق نام تصویر بررسی می‌شود. اگر دو تصویر، مشابه باشند، هر دو تصویر به صورت ثابت نمایش داده می‌شوند. دکمه‌های مربوطه نیز غیرفعال می‌شوند تا دیگر کاربر نتواند روی آن‌ها کلیک کند. همزمان با نمایش دو تصویر، صدایی پخش شده و انیمیشنی ساده روی تصاویر اعمال می‌شود. برای اینکه بعداً این دکمه‌ها با دکمه‌های دیگر اشتباه گرفته نشوند، هر دو دکمه در یک لیست دیگر قرار می‌گیرند. بررسی پایان یافتن بازی (پیدا شدن تمام تصاویر) نیز در ادامه انجام می‌شود. حال اگر تصویر دو دکمه کلیک شده مشابه نباشند، ابتدا تمام دکمه‌ها غیرفعال می‌شوند تا کاربر نتواند به کلیک کردن خود ادامه دهد و منطق بازی دچار مشکل شود. پس از وقفه‌ای کوتاه (1 ثانیه) تمام دکمه‌های غیرفعال شده (غیر از دکمه‌هایی که تصویر آن‌ها توسط کاربر پیدا شده بودند) مجدداً فعال می‌شوند. پس از بررسی مشابهت یا عدم مشابهت تصویر دکمه‌ها نیز متغیری که برای شمارش تعداد کلیک‌ها در نظر گرفته شده بود، صفر می‌شود تا زوج کلیک بعدی را شمارش کند.

فهرست مطالب
مقدمه
فصل اول: ایجاد لیست دسته‌بندی‌های تصاویر
توضیح بازی
ایجاد اپلیکیشن
طراحی رابط کاربری صفحه دسته بندی‌های تصاویر
ایجاد کلاس آداپتر و کلاس تعریف کننده داده‌های آیتم ها
ایجاد رابط کاربری حاوی آیتم‌های دسته بندی تصاویر
ایجاد اشیائی از کلاس تعریف کننده آیتم‌های دسته‌بندی تصاویر و مقداردهی آن‌ها
پیاده سازی متد اداره کننده کلیک شدن روی آیتم‌های دسته‌بندی تصاویر
فصل دوم: طراحی و کدنویسی صفحه اصلی بازی
طراحی رابط کاربری صفحه اصلی بازی
اضافه کردن تصاویر دو به دو به پروژه
شروع کدنویسی صفحه اصلی بازی
ارجاع به دکمه‌ها و تنظیم گوش دهنده رویداد کلیک شدن برای آن‌ها
ایجاد متد ()showImage
ایجاد متدهای ()disableButtons و ()enableButtons
اجرای انیمیشن هنگام یافتن تصاویر مشابه
پخش شدن صداهای بازی

مطالب مرتبط

تگ‌ها

مطالب پربیننده

پربیننده
آخرین مطالب

عضویت در خبرنامه