با سلام خدمت کاربران محترم سایت نیک اندروید در این آموزش قصد داریم استفاده از Bundle و اینتنت ها در برنامه نویسی اندروید را برای شما توضیح دهیم.

همانطور که میدانیم ما میتوانیم بین اکتیویتی ها ارتباط برقرار کنیم و این ارتباط برقرار

کردن فقط صدا زدن اکتیویتی دیگر نیست بلکه میتوانیم یکسری اطلاعات را به همراه یک

اکتیویتی به اکتیویتی دیگر ارسال کنیم . و از اکتیویتی دوم بخواهیم که این اطلاعات را پردازش کند .

به عبارت ساده تر اکتیویتی اول وقتی اکتیویتی دوم را صدا میزند میتواند علاوه بر صدا زدن اکتیویتی دوم  باندل یا بسته ای از اطلاعات را به اکتیویتی دوم ارسال کند .اکتیویتی دوم میتواند یکسری کارها انجام بدهد و کارش را تمام کند اما اگر اکتیویتی اول از ارسال این باندل نتیجه ای را خواسته باشد(startActivityForResult)  باید اکتیویتی دوم بعد از پردازش نتیجه ای را به اکتیویتی اول برگرداند.

برای مثال ما میخواهیم  یک String را از MainActivity  به   SecondActivity   ارسال کنیم.

ابتدا در لیوت xml اکتیویتی اصلی  یک Button قرار میدهیم  تا با زدن این دکمه به اکتیویتی دوم برویم در اکتیویتی دوم TextView قرار میدهیم تا  استرینگی که از اکتیویتی  اول گرفتیم را بتوانیم در اکتیویتی نمایش دهیم.

 

استفاده از Bundle و اینتنت ها در برنامه نویسی اندروید
استفاده از Bundle و اینتنت ها در برنامه نویسی اندروید

 

همانطور که در تصویر بالا مشاهده میکنید باتن مورد نظر را به فایل جاوا معرفی کردیم و در رویداد کلیک آن یک متغیراز نوع استرینگ درست کردیم و متنی را به دلخواه درون آن قرار دادیم و از Intent  استفاده کردیم تا بتوانیم از یک اکتیویتی به اکتیویتی دیگر برویم با این تفاوت که این بار میخواهیم یک متنی را با اینتنت  به اکتیویتی دوم ارسال کنیم که برای این کار از  putExtera استفاده کرده و یک نام یا کلید برایش انتخاب میکنیم و مقدار مورد نظر را  که در اینجا  Hello world… است که داخل متغیر str ریختیم را  درون آن میگذاریم و اکتیویتی را استارت میکنیم.

ما با این روش یک استرینگی را به اکتیویتی دوم   همان secondActivity  میفرستیم  حالا باید در اکتیویتی دوم این مقدار را دریافت کنیم و نمایش بدهیم.

 

استفاده از Bundle و اینتنت ها در برنامه نویسی اندروید
استفاده از Bundle و اینتنت ها در برنامه نویسی اندروید

 

در اکتیویتی دوم ، تکست ویویی که داشتیم را به فایل جاوا معرفی میکنیم و بدنبالش کد دریافت مقادیر ارسالی از اکتیویتی اول را  مینویسیم  و این بار از getExtera  استفاده مکنیم و نام یا کلیدی که در اکتیوتی اول برای استرینگ گذاشته بودیم را میدهیم تا اکتیویتی دوم متوجه بشود که باید چه مقداری با چه اسمی را دریافت کند. ود در آخر مقدار دریافتی را داخل یک متغیر بنام str  ریختیم تا بتوانیم در تکست ویو نمایش دهیم.

ونتیجه کار:

استفاده از Bundle و اینتنت ها در برنامه نویسی اندروید
استفاده از Bundle و اینتنت ها در برنامه نویسی اندروید

 

البته توجه داشته باشید که این کد را میتوانیم بصورت خلاصه شده هم بنویسیم و نتیجه یکسان دریافت کنیم به این شکل:

استفاده از Bundle و اینتنت ها در برنامه نویسی اندروید
استفاده از Bundle و اینتنت ها در برنامه نویسی اندروید

 

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

دقت داشته باشید که در صورتیکه بخواهید مقداری از نوع int    ارسال کنید باید از getIntExtera استفاده کنید.

امیدوارم این آموزش مفید واقع شود.

بارگذاری بیشتر مطالب مرتبط
بارگذاری توسط مدیر نوشادی

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد.

هفت + هفده =