آکادمی آموزش آنلاین طوسی

نحوه ساخت Activity های جدید به منظور عملی ساخت Intent ها (بخش اول)

اهداف آموزشی این قسمت عبارتند از:

1. نحوه ساخت یک Activity جدید

2. نحوه ایجاد یک فایل جاوا در محیط اکلیپس

3. نحوه ارث بری از کلاسActivity اندروید

4. نحوه ساخت یک UI جدید و نامگذاری آن

همانطور که قبلا گفته شد در حین ساخت یک پروژه در محیط برنامه نویسی اکلیپس یک Activity تحت هر نامی که بخواهیم به صورت خودکار ایجاد شده و به یک Layout تحت عنوان main.xml لینک می شود. در این پروژه نام FirstActivity را برای Activity خود در نظر می گیریم. حال این Activity می بایست به صورت زیر باشد:

در واقع کدی که در تصویر فوق مشاهده می شود به منزله حداقل کدی است که یک اپلیکیشن اندرویدی می تواند داشته باشد. این Activity به فایل main.xml یی که در تصویر زیر مشاهده می شود لینک داده شده است:

اکنون از آنجا که هدف از به کار گیری Intent ها رفتن از یک Activity به Activity دیگر است، از اینرو نیاز است تا یک Activity دیگر ایجاد کنیم:

برای این منظور همانطور که در تصویر فوق مشخص است روی نام پکیج پروژه خود کلیک راست کرده سپس از بخش گزینه New روی گزینه Class کلیک می نماییم

پس از کلیک کردن روی گزینه Class با پنجره ای به صورت فوق مواجه خواهیم شد. اگر به قسمت بالای این پنجره خوب دقت کنیم خواهیم دید که در بخش Source folder به معنی "فولدر سورس اصلی" فولدر src در پروژه ای که ایجاد کردیم به صورت خودکار پر شده است. همچنین در بخش Package نیز پکیجی که در حین ساخت پروژه خود تعریف کردیم مد نظر قرار داده شده است. در بخش Name به معنی "نام" عبارت SecondActivity را به صورت camelCase وارد می کنیم. سپس مابقی تنظیمات را به صورت پیش فرض قرار داده و روی دکمه Finish کلیک می نماییم:

Activity دوم اپلیکیشن ما تحت عنوان SecondActivity.java به صورت فوق خواهد بود. حال اگر به FirstActivity توجه کنیم می بینیم که از کلاسActivity اندروید ارث می برد. در واقع در بحث وراثت در زبان برنامه نویسی جاوا اول می بایست نام یک کلاس را نوشته کلید واژه extends را نوشته و در نهایت نام کلاسی که می خواهیم برخی خصوصیات را از آن به ارث ببریم می نویسیم. در حقیقت از آنجا که کلاسActivity اندروید که توسط طراحان این سیستم عامل نوشته شده است دارای قابلیت های بسیار زیادی است از یک سو و همچنین برای توسعه اپلیکیشن خود نه تنها به برخی از آن قابلیت ها احتیاج داریم بلکه اگر خودمان بخواهیم چنین قابلیت هایی را ایجاد کنیم هم زمان بر خواهد بود و هم ممکن است دانش این کار را نداشته باشیم از سوی دیگر، کلاس خود را به صورت زیر وارث کلاسActivity اندروید می سازیم:

پس وارث قرار دادن کلاسFirstActivity از کلاسActivity اندروید، مشاهده خواهیم کرد که اکلیپس دوره Activity نقطه چین قرار خواهد داد و این بدان معنی است که این کلاس برای پروژه ناشناخته است. از این رو به منظور Import کردن این کلاسبه پروژه خود نشانگر موس خود را روی آن قرار داده و خواهیم دید که پنجره ای زرد رنگ باز خواهد شد. حال همانطور که در تصویر فوق با یک فلش قرمز رنگ مشخص شده است روی گزینه ‘Import ‘Activity کلیک می کنیم:

همانطور که در تصویر فوق مشاهده می شود با انجام دستورات فوق الذکر کلاسActivity اندروید به پروژه ما Import یا "وارد" خواهد شد. حال از این پس خواهیم توانست در پروژه خود به استفاده از کلیه متدهای مرتبط با این کلاسبپردازیم.

در واقع کاری که FirstActivity انجام می دهد این است که Layout یی تحت عنوان main.xml را به نمایش در می آورد و این در حالی است که این فایل xml به صورت خودکار توسط اکلیپس ایجاد شده است. در واقع از آنجا ما خود SecondActivity را به اپلیکیشن اضافه نموده ایم مسلماً هیچ گونه فایل xml یی نیز وجود ندارد که به این Activity جدید لینک دهیم. برای این منظور نیاز است تا یک Layout جدید ایجاد کنیم. برای این منظور مطابق دستورات زیر عمل خواهیم کرد:

همانطور که در تصویر فوق مشخص است روی گزینه ای که با یک دایره قرمز رنگ مشخص است است می بایست کلیک نماییم. در واقع چنانچه نشانگر موس خود را روی این دکمه قرار دهیم پنجره"معنی به Open a wizard to help create a new Android XML file نوشته مربوط به ساخت یک فایل XML اندروید را باز کن" ظاهر می شود. پس از کلیک کردن روی این گزینه پنجره ای به صورت زیر نمایان خواهد شد:

در تصویر فوق منوی شماره یک مربوط به نوع فایل XML یی است که می خواهیم ایجاد کنیم. در واقع از آنجا که می خواهیم یک رابط گرافیکی کاربر جدید ایجاد کنیم، می بایست گزینه Layout را از منوی مربوطه انتخاب کنیم. گزینه شماره دو مربوط به پروژه ای است که می خواهیم این فایل XML جدید در آن ایجاد شود. در حقیقت اگر ما چندین پروژه در محیط اکلیپس ایجاد کرده باشیم، از این لیست می بایست پروژه مد نظر خود را انتخاب کنیم که در غیر اینصورت ممکن است این فایل در پروژه ای که مد نظر ما نیست ایجاد شود(لازم به ذکر است از آنجا که ما یک پروژه بیشتر در اکلیپس نداریم مسلما یک گزینه بیشتر در لیست وجود نخواهد داشت).

گزینه شماره سه یا همان File مربوط به نامی است که می خواهیم فایل XML جدید به آن نام شناخته شود. توجه داشته باشیم که در حین انتخاب نام می بایست از حروف کوچک استفاده کرده

و چنانچه بخواهیم از نام های چند بخشی استفاده کنیم بایستی آنها را توسط یک _ از یکدیگر مجزا سازیم. در این مثال نام second_layout در نظر گرفته شده است.

گزینه شماره چهار مربوط به نوع Layout یی است که می خواهیم داشته باشیم که گزینه LinearLayout که رایج ترین نوع Layout ها است را انتخاب می کنیم. قبل از آنکه روی گزینه Finish کلیک کنیم مد نظر قرار دادن یک نکته می تواند از سر در گمی ما در آینده جلوگیری کند. حال اکلیپس از کجا خواهد فهمید که این فایل جدید را به کدام فولدر در یک پروژه اپلیکیشن اندروید اضافه کند؟

در پاسخ به سوال فوق بایستی گفت که از آنجا که در گزینه شماره یک ما Layout را انتخاب کرده ایم، خود اکلیپس خواهد فهمید که وظیفه دارد کلیه فایل های XML مرتبط با Layout ها را به فولدر layout که زیرشاخه فولدر res قرار دارد انتقال دهد. حال می توانیم روی گزینه Finish کلیک نماییم:

اکنون با مراجعه به پنجره Package Explorer و باز کردن فولدر layout خواهیم دید که فایل ساخته شده در آن فولدر قرار گرفته است(چنانچه روی این فایل کلیک کنیم خواهیم دید که یک رابط گرافیکی کاربر مشکلی رنگ است که هیچ گونه متنی روی آن نوشته نشده است).

 

پس از مطالعه این آموزش انتظار می رود بتوانیم به سؤالات زیر پاسخ بدهیم:

1. به چه صورت می توان یک فایل جاوای جدید ساخت؟

2. نحوه نامگذاری فایل های جاوا در یک اپلیکیشن اندرویدی چگونه است؟

3. نحوه ساخت یک فایل XML جهت استفاده برای UI به چه شکل است؟

4. نامگذاری فایل های XML طبق چه قاعده و قانونی است؟

برای مشاهده نظرات وارد سایت شوید یا ثبت‌نام کنید.

51st_Session,_How_to_Create_New_Activities_Part_1.pdf

لینک دانلود فایل درس نحوه ساخت Activity های جدید به منظور عملی ساخت Intent ها (بخش اول)

سرفصل های آموزشی دوره رایگان برنامه نویسی اندروید Android

منبع این درس در سایت سکان (www.sokanacademy.com)