دسترسی به Activity قبلی
مدیریت گفتگو
سلام دوستان
چطور میشه به اکتیویتی قبلی دسترسی پیدا کرد و چند تا مقدار رو ازش گرفت ؟
Edit
فرض کنید برنامتون 3 تا activity داره
اکتیویتی اول mainActivityOne
اکتیویتی دوم mainActivityTwo
اکتیویتی سوم secendActivity
حالا برنامه رو باز میکنی و از activityMainTwo وارد secendActivity میشی.
توی secendActivity از کجا میشه فهمید که از اکتیویتی اول(activityMainOne) اومده یا از اکتیویتی دوم(activityMainTwo)
پاسخها 3
موقعی که intent رو تعریف میکنید برای رفتن به اکتیویتی بعدی، خیلی راحت میتونید از putExtra استفاده کنید در اکتیویتی اول :
Intent i = newIntent(FirstScreen.this, SecondScreen.class);
String strName = "این متن از اکتیویتی اول ارسال می شود";
i.putExtra("STRING_I_NEED", strName);
و توی اکتیویتی دوم توسط کد زیر متنی رو که از اکتیوتی اول گرفتید میگیرید و میتونید نشون بدید :
Bundle extras = getIntent().getExtras();
if(extras != null){
newString = extras.getString("STRING_I_NEED");
}
و newString داده ای هستش که شما از اکتیویتی اول گرفتید و بر اساس نیازتون میتونید ازش استفاده کنید.
---------- ویرایش شد ----------
برای ارسال داده در بین Fragment ها می تونید از روش زیر استفاده کنید :
Bundle bundle =newBundle();
bundle.putInt(key, value);
fragment.setArguments(bundle);
و در اکتیویتی دوم داده فرستاده شده رو میگیرید :
Bundle bundle = this.getArguments();
if(bundle !=null){
int i = bundle.getInt(key, defaulValue);
}
نظرات
ممنون سالار
ولی من توی کلاسی هستم که از کلاس فرگمنت extends شده و با این کد به این کلاس اومدم:
getSupportFragmentManager().beginTransaction().replace(R.id.fragment_container, CameraFragment.newInstance(), CameraFragment.TAG).commit();
و کد شمارو توی کلاسی که از فرگمنت extends شده نمیشناسه :(
راه حل دیگه ای ندارید ؟
نظرات
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .

نظرات