제목대로 최상위 액티비티를 제외한 앱내의 액티비티 스택에
특정 액티비티가 있는지 알 수 있는 방법이 있나요?
가령 아래와 같이 4개의 activity가 있을 때 C activity가 있는지 코드상으로 확인 할 수 있는지 알고 싶습니다.
/**********/
/ A activity /
/**********/
/ B activity /
/**********/
/ C activity /
/**********/
/ D activity /
/**********/
1. 스태틱 전역변수를 아래와 같이 선언합니다.
class activity
{
public static ArrayList<Activity> actList = new ArrayList<Activity>();
}
액티비티를 순회할때마다 각 액티비티에 아래와 같이 액티비티들을 넣어 줍니다.
2. activity.actList.add(this);
3. 액티비티가 스택에있는지 확인하고 싶을떄
for(int i = 0; i < activity.actList.size(); i++)
{
if(activity.actList.get(i) == A activity,.... D activity ) //이부분에서 비교하시면 됩니다.
}
A activity ,..., D activity 등은 스태틱 형태로 가지고 있으시면 됩니다.
이렇게 하면 될것같네여
이방법이 원래는 activity 의 finish 할때 사용하는 방법입니다. 이방법을 변경하여 위와 같이도 사용이 됩니다.
저는 구현해봐서.. ;;
참고해보세여 ^^