رفتن به activity جدید، با استفاده از یک رشته (تعریف نام activity با رشته)، در برنامه نویسی اندروید
روش عادی برای رفتن از یک activity به activity دیگر به صورت زیر می باشد :
که در آن، CurrentActivity برابر نام activity فعلی (همان activity که در آن هستیم) و NextActivity ، برابر آن activity است که قصد داریم وارد آن شویم.
اما ممکن است که بخواهیم نام activity که قرار است به آن برویم را با یک رشته (string) تعریف کرده و سپس بر اساس آن رشته، وارد activity بشویم، زیرا اینگونه کد نوشتن، آزادی عمل بیشتری به ما می دهد و برای نوشتن برخی برنامه ها، لازم می شود (البته تا مجبور نشده اید، از آن استفاده نکنید، تا حجم کدهایتان زیاد نشود). برای این منظور، کدهای زیر را می نویسیم :
Class<?> c = null;
if(StringClass != null) {
try {
c = Class.forName(StringClass);
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
Intent intent = new Intent(CurrentActivity.this, c);
startActivity(intent);
که در آن، CurrentActivity برابر نام activity فعلی (همان activity که در آن هستیم) و NextActivity ، برابر آن activity است که قصد داریم وارد آن شویم.
در کدهای بالا، به عبارت نوشته شده برای رشته StringClass توجه کنید (در این رشته، نام activity را مشخص کرده ایم) :
مشاهده می کنید که نام package برنامه اندروید را قبل از نام activity مورد نظرمان که می خواهیم به آن وارد شویم (یعنی NextActivity)، نوشته ایم. در کد بالا، ما نام package را برابر com.kelidestan.example گرفته ایم و شما باید آن را به نام package مورد نظر خود، تغییر بدهید.