View Full Version : {آموزش} - ارسال اطلاعات بین دو Activity
darkeliden
چهارشنبه 18 دی 1392, 03:16 صبح
سلام
ممکنه برای شما هم سوال بیاد که چجوری میشه بین دو اکتیویتی تبادل اطلاعات کرد.
بزارین با یه مثال ساده براتون توضیح بدم ، همانطور که میدونین برای اجرای اکتیویتی از کد زیر استفاده میکنیم :
i = new Intent(MainActivity.this, ViewTopicList.class);
startActivity(i);
حالا میشه همین کد رو تغییر داد و مثل زیر کرد:
i = new Intent(MainActivity.this, ViewTopicList.class);
i.putExtra("sample", 1);
startActivity(i);
و در اکتیویتی B با دستور زیر مقادیر sample رو دریافت کرد :
Intent i = getIntent();
int type = i.getIntExtra("sample", 0);
به همین راحتی!
arman_Delta2002
جمعه 05 دی 1393, 17:52 عصر
حالا من بخوام یک لیست بفرستم چی ؟
public class GridViewItemInfo
{
public string Name
{
get;
set;
}
public Discription
{
get;
set;
}
public Byte[] Image
{
get;
set;
}
توجه داشته باش که توی این کلاس یه داده از نوع بایت هم هست!
List<GridViewItemInfo> _result2 = new List<GridViewItemInfo>();
Nevercom
جمعه 05 دی 1393, 20:22 عصر
با انطباق کلاستون با الگوی Parcelable، میتونید اون شئ رو بصورت Parcel بفرستید.
پلاگینی برای اینکار در اندروید استودیو هست که بصورت خودکار اینکار رو انجام میده.
storm_saeed
جمعه 05 دی 1393, 21:19 عصر
یه راه خوبم استفاده از GSon هست که ابجکت رو به json تبدیل کنید و بصورت string بفرستیدش اونور و دوباره اونور تبدیل به ابچکتش کنید
این راه تو فرگمنت ها خیلی کاربردیه
storm_saeed
جمعه 05 دی 1393, 21:31 عصر
------------------
arman_Delta2002
جمعه 26 دی 1393, 18:33 عصر
ببخسید اون json است و یه مسال برام بزارین که درکش کنم تازه انروید کار میکنم
با انطباق کلاستون با الگوی Parcelable، میتونید اون شئ رو بصورت Parcel بفرستید.
هر نوع کلاسی رو میشه با این روش ارسال کرد ؟
من یه کلاس مربوط به تاریخ شمسی دارم
s3rv3r
جمعه 26 دی 1393, 19:15 عصر
نظرتون درباره ArrayList و HaspMap چیه؟ با ترکیب اینا فکر کنم بشه هر چیزی که دلمون بخواد رو پاس بدیم
arman_Delta2002
جمعه 26 دی 1393, 21:45 عصر
با json تست کردم بلزم خطا داد
البته یه کلاس تاریخ شمسی میفرستم
Newtonsoft.Json.JsonSerializationException: Self referencing loop detected for property 'Now' with type 'CalanderD.PersianDateTime'. Path ''.
jokerhp
جمعه 13 آذر 1394, 20:31 عصر
سلام
من یه متغیر از نوع انت دارم میخوام توی همه اکیتویتی ها ازش استفاده کنم دقیقا باید چی بنویسم
ممنون میشم کمکم کنید
majid_7
یک شنبه 15 آذر 1394, 16:02 عصر
سلام
من یه متغیر از نوع انت دارم میخوام توی همه اکیتویتی ها ازش استفاده کنم دقیقا باید چی بنویسم
ممنون میشم کمکم کنید
بهتره از SharedPreferences استفاده کنی دوست عزیز... ضمنا بهتره توی تاپیکی که مربوط به موضوع نیست سوال نپرسید.... متشکرم
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.