دسترسی به Activity قبلی
سلام دوستان
چطور میشه به اکتیویتی قبلی دسترسی پیدا کرد و چند تا مقدار رو ازش گرفت ؟
Edit
فرض کنید برنامتون 3 تا activity داره
اکتیویتی اول mainActivityOne
اکتیویتی دوم mainActivityTwo
اکتیویتی سوم secendActivity
حالا برنامه رو باز میکنی و از activityMainTwo وارد secendActivity میشی.
توی secendActivity از کجا میشه فهمید که از اکتیویتی اول(activityMainOne) اومده یا از اکتیویتی دوم(activityMainTwo)
موقعی که 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 شده نمیشناسه :(
راه حل دیگه ای ندارید ؟
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .
