آموزش برنامه نویسی اندروید ( قسمت سوم جابجایی بین اکتیویتی‌ها)

android3

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

قبل از اینکه بخواهیم شروع نماییم، بگذارید تصور کنیم که شما یک پروژه جدید را همانطور که در درس اول توضیح دادیم ایجاد کرده اید و علاوه بر اکتیویتی پیشفرض یک اکتیویتی جدید به نام SecondScreen.java را به آن اضافه کرده اید.

باز کردن یک اکتیویتی جدید

برای باز کردن یک اکتیویتی جدید باید یکی از دو دستور زیر را استفاده کنید:

۱
startActivity()

یا

۱
startActivityForResult()

دستور کلی باز کردن یک اکتیویتی جدید در زیر آورده شده:

۱
۲
Intent i = new Intent(getApplicationContext(), SecondScreen.class);
StartActivity(i);

ارسال پارامتر و داده به اکتیویتی ها

برای ارسال داده از یک اکتیویتی به اکتیویتی دیگر از دستور

۱
putExtra()

استفاده می کنیم. در زیر روش استاندارد برای ارسال مقادر از اکتیویتی به اکتیوتی های دیگر را برایتان آورده ایم:

۱
۲
۳
۴
۵
۶
i.putExtra("key", "value");
// Example of sending email to next screen as
// Key = 'email'
// value = 'myemail@gmail.com'
i.putExtra("email", "myemail@gmail.com");

دریافت مقادیر ارسال شده از اکتیویتی ‌قدیمی در اکتیویتی جدید:

۱
putExtra()

کد کامل دریافت مقادیر ارسالی از یک اکتیویتی به اکتیوتی دیگر در زیر آورده شده که بخوبی نشان می دهد چگونه باید اینکار را انجام داد:

۱
۲
۳
۴
۵
۶
Intent i = getIntent();
i.getStringExtra("key");
// Example of receiving parameter having key value as 'email'
// and storing the value in a variable named myemail
String myemail = i.getStringExtra("email");

بستن اکتیویتی ها

همانطور که در جلسه اول هم توضیح دادیم، اکتیویتی ها را میتوان به فرم ها در اپلیکیشن های ویندوزی تشبیه کرد. پس بسیار پیش می آید که نیاز به بستن یک اکتیویتی در اپلیکیشن اندرویدی مورد نظر خود داشته باشید. برای بستن هر اکتیویتی از کد زیر استفاده نمایید:

۱
finish();

اضافه نمودن اکتیویتی ها به فایل AndroidManifest.xml

اگر بخواهید از چند اکتیویتی در اپلیکیشن خود استفاده کنید باید تک تک آنها را در فایل AndroidManifest.xml تعریف نمایید. در غیر این صورت با پیام خطای Force Close مواجه خواهید شد.

برای معرفی هر اکتیویتی کافیست در بین تگ <application> از کد زیر برای هر مورد از اکتیویتی ها استفاده کنید.

۱
<activity android:name=".NewActivityClassName"></activity>

شروع یک پروژه جدید برای یادگیری این درس

نظر شخصی ما را اگر بخواهید می گوییم هیچ چیز مانند تمرین عملی نمی تواند باعث یادگیری برنامه نویسی گردد، حالا به هر زبانی که باشد، پس بگذارید کار را با یک مثال انجام دهیم. یک پروژه جدید ایجاد کنید و نام آن را androidswitchviews بگذارید. سپس در پوشه layouts دو فایل جدید با نام های screen1.xml و screen2.xml ایجاد کنید. در بخش Activity ها نیز دو فایل جدید با نام های FirstScreenActivity.java و SecondScreenActivity.java بسازید. در تصویر زیر می توانید بخوبی مشاهده کنید که پس از اضافه کردن این موارد، ساختار پروژه چگونه خواهد شد.

 

new12

 

ما نمیخواهیم کار را زیاد پیچیده کنیم. همانطور که در درس دوم نیز اشاره کردیم اگر کدها برای شما نا آشنا هستند اصلا نگران این موضوع نباشید چرا که رفته رفته آنقدر با آنها سرو کار خواهید داشت که خود به خود برایتان مفهوم تر می شوند.

خب، حالا کد زیر را در فایل screen1.xml که قبلا آن را به پروژه اضافه کرده ایم قرار دهید:

 

new13

 

 

شکل گرافیکی این صفحه به صورت زیر خواهد بود:

 

new14

 

حالا فایل FirstScreenActivity.java را بز کرده و کد زیر را هم در این فایل قرار دهید و آن را ذخیره نمایید:

new15

 

فایل SecondScreenActivity.java را نیز باز کرده و کد زیر را هم در این فایل قرار داده و ذخیره سازید:

 

new16

 

 

حالا فایل صفحه دوم که نامش را screen2.xml گذاشته بودیم را باز کنید و کد زیر را نیز درون این فایل قرار دهید:

 

new17

 

در نهایت فایل AndroidManifest.xml پروژه را باز کنید و تغییرات لازم را در ان ایجاد نمایید تا دقیقا شبیه به کد زیر شود:

 

new18

 

کار تمام است! بر روی نام پوشه پروژه خود راست کلیک کرده و ابتدا Run As و پس از آن Android Application را انتخاب کنید تا پروژه اجرا گردد. اگر تمام مراحل را درست و با توجه به آنچه توضیح داده شد انجام داده باشید، شبیه ساز اندروید باز شده و پروژه در آن شاجرا می گردد. دقت کنید که برای اولین بار ممکن است کمی طول بکشد تا شبیه ساز بالا بیاید. تصویر زیر حاصل نهایی کار را نشان می دهد:

 

new19

 

منبع : سایت گویا آی تی

 

 

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *