2014-06-06 3 views
0

내 앱이 완료되고 완료되었습니다. 이제 클라이언트는 데모 기능을 원합니다. 따라서 데모 모드로 실행하면 모든 화면에 왼쪽 모서리에 "데모"가 있어야합니다.모든 액티비티 위에 오버레이를 추가하는 방법

최소 코드를 변경하면 어떻게됩니까?

나는 상대적 레이아웃과 물건을 가진 솔루션을 볼 수 있지만 모든 활동 레이아웃을 변경해야합니까?

+0

없이, 기본 활동을 생성, 모든 활동은 기본 활동에 필요한 모든 기본 활동을 확장해야 할 것은 그런 방법으로 된 setContentView을 무시하는 것입니다 그것은 모서리에 TextView를 추가합니다. – pskink

+0

이미 기본 활동 및 기본 단편 구조를 사용하고 있습니다. 당신은 그와 같은 재정의 예가 있습니까? – user1007522

+0

아니요,하지만 super를 호출하고 addContentView를 호출하려고 했습니까? – pskink

답변

0

pskink에게 감사드립니다. 해결책을 찾았습니다. 내 baseActivity에서

나는이처럼 내 된 setContentView를 오버라이드 (override) :

@Override 
public void setContentView(int layoutResID) { 
super.setContentView(layoutResID); 

if(config.isInDemoMode()) { 
    RelativeLayout lContainerLayout = new RelativeLayout(this); 
    lContainerLayout.setLayoutParams(new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT)); 

    TextView mCustomView = new TextView(this); 
    mCustomView.setText("DEMO"); 
    RelativeLayout.LayoutParams lTextViewParams = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); 
    lTextViewParams.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM); 
    mCustomView.setLayoutParams(lTextViewParams); 
    lContainerLayout.addView(mCustomView); 

    addContentView(lContainerLayout, new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT)); 
} 
} 
+0

그냥 addContentView (mCustomView, lTextViewParams) 아무것도 안 함 – pskink

관련 문제