Sobes.tech
Junior — Middle

Új Activity helyezhető el a jelenlegi Task fölött a meglévő projekt keretében?

sobes.tech MI

Válasz az MI-től

Igen, az Androidon lehet új Activity-t elhelyezni a jelenlegi Task fölött, az Intent és a megfelelő zászlók használatával indítva. Alapértelmezés szerint az új Activity ugyanabban a Taskban indul, mint a hívó.

Ha kifejezetten az aktuális verem fölött szeretnél Activity-t indítani, használhatod az Intent.FLAG_ACTIVITY_NEW_TASK vagy az Intent.FLAG_ACTIVITY_SINGLE_TOP zászlót, a kívánt viselkedéstől függően.

Példa egy új Activity indítására a jelenlegi Task fölött:

Intent intent = new Intent(currentContext, ÚjActivity.class);
// Alapértelmezés szerint az új Activity ugyanabban a Taskban lesz
currentContext.startActivity(intent);

Ha az Activity-t egy új Taskban (külön veremben) szeretnéd indítani, add hozzá a zászlót:

intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

Így, az új Activity elhelyezéséhez a jelenlegi Task fölött, elegendő a startActivity hívása további zászlók nélkül, és az a jelenlegi verem fölött fog megjelenni.