반응형
Activity
액티비티는 하나의 사용자 인터페이스(UI)를 나타내는 단위 입니다.

하나의 앱에 여러개의 액티비티가 존재할 수 있습니다. 이 액티비티들은 각각 다른 액티비티와 독립되어 있지만 하나의 결합도니 인터페이스를 형성하기 위해 함께 동작합니다.

각각의 액티비티는 Activity 클래스를 상속하는 하위 클래스로 구현되며 하나의 윈도우가 기본적으로 제공됩니다. 윈도우 내의 컨텐츠는 VIew 클래스의 계층 구로에 의해 만들어 지고 각각의 View는 윈도우 내의 특정 영역을 제어하며 액티비티와 사용자간의 상호작용을 가능하게 합니다. parent view는 children view의 레이아웃을 포함하고 구조화하게 됩니다.  View는 Activity.setContentView() 메소드로 액티비티 윈도우 내에 위치하게 됩니다.

그리고 하나의 액티비티는  다른 앱의 액티비티를 포함한 다른 액티비티를 시작할 수 있습니다. 이 때 인텐트 객체에 필요한 정보를 추가한 후에 startActivity()의 파라미터로 전달하게 되면 다른 액티비티가 시작되게 됩니다.

이렇게 서로 다른 앱의 액티비티를 같은 Task 내에 유지함으로써 하나의 앱 처럼 사용자들은 사용할 수 있게 됩니다.


Task
태스크는 한의 스택 내에 정렬된 액티비티의 그룹으로 그 태스크를 시작했던 액티비티가스택의 root액티비티가 됩니다.

하나의 액티비티가 다른 액티비티를 시작할때 새로운 액티비티는 Push되어(스택에 올려짐) 실행상태가 됩니다. 이전의 액티비티는 스택에 남아서 사용자가 back키를 누러면 현재 액티비티가 Pop(스택에서 제거)되고, 이전의 액티비티는 resume(재개)되게 됩니다.

스택은 객체들은 포함하므로 태스크가 동일한 액티비티 하위 클래스의 인스턴스를 하나 이상 사지고 있다면 스택은 각각의 인스턴스에 대한 별도의 시작점을 가지게 됩니다.






반응형

+ Recent posts