2011-03-04 3 views
6

사용자가 "아래"앱을 정상적으로 사용하는 동안 애니메이션을 표시 할 수 있도록 스윙 GlassPane과 유사한 기능을 다시 만들고 싶습니다. 애니메이션을 전환 할 때 애니메이션 상태가 손실 될 수 있으므로 개별 레이아웃을 만들어 각 액티비티에 첨부 할 수는 없습니다. Android 애플리케이션의 모든 활동을 지속적으로 볼 수있는 방법이 있습니까?Android - 모든 활동에 대한 영구적 인보기 표시

감사합니다.

답변

1

아니요. 모든 활동은 자체 스레드에서 실행되며 독립 실행 형으로 실행되도록 설계되었습니다.

하지만 DB에 또는 sharedPreferences에 애니메이션 상태를 유지하고 새 활동에서 애니메이션 상태를 시작할 수 있습니다.

당신이 할 수있는 일은 별도의 활동 대신 Spinner 나 다른 컨트롤을 사용하는 것입니다. 그렇다면 당신은 지속적인 견해를 가질 수 있습니다.

+0

예, 나는 대화 또는 유사한 사용에 대한 생각 예를 쓸 것이다, 그러나 그것은 항상 특정 활동에 부착해야하므로 다른 활동으로 전환 할 때이 숨겨져. – janin

+0

이것이 사실인지 나는 모른다. Zedge 앱을 살펴 보라. 어떻게하는지 잘 모르지만 활동 사이에서 애니메이션을 만들 때 스왑 아웃되지 않는 지속적 탐색을 표시합니다. 그것이 어떻게 완료되었는지 알아 내면, 나는 여기에 올릴 것입니다. 수정 : 새 앱이 더 이상이 작업을 수행하지 않습니다. 내 말을 들어라.) –

+0

다른 활동 사이에서 움직이는 것이 확실합니까? 많은 경우, 여러 활동이 사용 된 것처럼 회 전자를 볼 수 있습니다. – Chris

0

왜 TabActivity에서 생각하지 않습니까?

안녕하세요! 나는 전에 TabActivity로, 결코 유일한 활동으로, 항상 많은 활동을 시작했다. 그들의 창을 얻고 TabActivity window의 장식보기로 설정한다 ... 나는 아이디어가 있기 때문에 아래의 코드를 테스트하지 않았다. 하지만 어쩌면 요즘 (집에있을 때) 나는 예제를 쓸 것이다 ...

그래서 내 생각은 ... TabActivity는 TabWidget과 FrameLayout으로 구성되어 있는데 여기에는 액티비티 윈도우 할당된다.

TabWidget은 모든보기가 될 수 있으므로 여기에 애니메이션보기를 넣을 수 있습니다.

가장 어려운 점은 TabActivity의 하위 활동을 시작하면 새 활동이 TabActivity 위에 있다는 것입니다. 이 동작을 재정의하려면 중첩 된 활동이 다른 활동을 시작하려고 할 때 TabActivity가 알아야합니다. 이 경우 TabActivity는 자신의 데코보기 (이전 창 활동 포함)를 지우고 새로운 데코보기를 지정해야합니다. 이런 식으로 뭔가 : 우리가 버튼을 클릭 할 때

자식 활동에 대한 새 활동을 시작 : 클릭 리스너에 ... TabActivity 말 로지텍은, 지금 ...

((MyTabActivity)getParent()).createNewActivity("NewActivity", NewActivity.class); 

을 그 이 새로운 활동을 시작하는 새로운 활동 장식보기를 얻을하고 TabActivity 장식보기 안에 해당 뷰를 넣어 가지고 ... 그래서, createNewActivity는 다음과 같이 수행합니다

public void createNewActivity(String activityId, Class<?> class1) { 
    Intent intent = new Intent(getIntent().getAction()).setClass(MyTabActivity.this, class1); 
    Window wList = getLocalActivityManager().startActivity(activityId, intent); 
    getWindow().setContentView(wList.getDecorView()); 
} 

당신이 나를 이해 바랍니다.

내가 나중에

관련 문제