2017-01-16 10 views
1

모두보기. Navigation View을 투명하게 만들 수 있습니까? 맞춤 레이아웃이 있으며 Navigation View 또는 Drawer Layout 레이아웃의 50 % 투명 배경을 설정하려고합니다.Android 탐색 투명도보기

android:background="#80000000" 

그러나 예상되는 결과는 얻을 수 없다.

아무도이를 시도하지 않았습니까? 나는 도움을 감사 할 것입니다.

답변

5

당신은 시도 할 수 있습니다 : 여기

navigationView.getBackground().setAlpha(122); 

가 255 (완전 불투명) 0 (완전 투명) 사이의 불투명도를 설정할 수 있습니다.

두 값을 사용하는 XML 값 alpha을 사용할 수도 있습니다.

범위는 투명한 0F, 0F에서 층 (포함)이고 불투명 되 1F :

android:alpha="0.0" 보이지

android:alpha="0.5" 투시

android:alpha="1.0" 전체 가시

1

하려면 투명한 탐색을 위해 아래 코드를 시도하십시오

final Window window = getWindow(); 
    ObjectAnimator animator = ObjectAnimator.ofInt(window, 
      "navigationBarColor", window.getNavigationBarColor(), Color.TRANSPARENT); 
    animator.setEvaluator(new ArgbEvaluator()); 
    animator.setDuration(0); 
    animator.start(); 
+0

는'#getNavigationBarColor()는'21 –

4

당신은 색상과 투명성이 시도합니다 ..

NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view); 
View headerView = navigationView.getHeaderView(0); 
------ 
// you can even change only one from above to and keep the other one normally 
     navigationView.getBackground().setColorFilter(0x80000000, PorterDuff.Mode.MULTIPLY); 
     headerView.getBackground().setColorFilter(0x80000000, PorterDuff.Mode.MULTIPLY); 

출력 :

enter image description hereenter image description here

더 deatals이 필요하면 당신은 내 대답을 확인 적용 할 수있는 색상 코드에 대한 here


당신은 단지 알파 사용을 설정하려면

는 또는 navigationView.getBackground().setAlpha(intNumberTill256);

는 내가 그 XML에 준 배경 색상입니다 때문에 PS의 항법 headder 어두운 색이

+0

다양한 API가 필요합니다 , +1 ..! 또한 * Android 태그의 최고 사용자로서이 짧은 질문에 답변 해 주시겠습니까? ** 클래스 ** 또는 ** 파일 ** 또는 ** 프로젝트 ** 각각에 대해 하나의'public static void main() {}'메소드를 사용해야합니까? – stack

+2

@stack 글쎄, 이런 식으로 말하고 싶습니다. 왜 그런 식으로하는 것이 좋을까요? 그렇다면 그것이 안드로이드에서 클래스의 메소드를 시작하는 방법이어야한다고 생각한다면 ... 아니요 .. ** 핵심 Java ** 프로그램에서 우리는 JVM이 바이트 코드를 실행하는 동안'main()'메소드를 필요로합니다. 클래스에서'main()'메소드를 검색하고 거기에서 실행을 시작하십시오. ** Android **의 경우, 각 패키지에 매니페스트가 포함되어 있습니다. launchpoint는이 매니페스트에 명시되어 있습니다. 지정된 클래스'onCreate()'메소드에서 응용 프로그램의 실행을 시작하므로'main()'메쏘드가 필요 없습니다. –

+2

@stack은 android life cycle에 대해 읽습니다. // 의심의 여지가 http : // stackoverflow.com/questions/8515936/android-activity-life-cycle-what-are-all-these-methods-for –