2016-09-05 3 views
0

넘침 메뉴에 문제가 있습니다. 내 도트 3 개를 이미지로 대체해야합니다. 몇 가지 방법을 시도했지만 작동하지 않습니다. 내 styles.xml에서넘침 아이콘을 새 이미지로 변경하십시오.

, 나는 다음과 같은 코드를 추가 한 :

<style name="AppTheme" parent="Theme.AppCompat.NoActionBar"> 
    ... 
    <item name="actionOverflowButtonStyle">@style/MyOverFlowMenu</item> 
    <item name="android:actionOverflowButtonStyle">@style/MyOverFlowMenu</item> 
</style> 

<style name="MyOverFlowMenu" parent="Widget.AppCompat.ActionButton.Overflow"> 
    <item name="android:src">@drawable/my_overflow</item> 
</style> 

내 응용 프로그램 이후 최신 안드로이드 4.4에서 작동합니다. 어떤 사람들은이 코드 뒤에 무엇이 잘못되었는지 알려 줄 수 있습니까? 미리 감사드립니다.

+0

를 들어

<style name="AppTheme" parent="Theme.AppCompat.NoActionBar"> <item name="colorPrimary">@color/colorPrimary</item> <item name="colorPrimaryDark">@color/colorPrimaryDark</item> <item name="colorAccent">@color/colorAccent</item> <item name="actionOverflowButtonStyle">@style/MyOverFlowMenu</item> <item name="android:actionOverflowButtonStyle">@style/MyOverFlowMenu</item> </style> <style name="MyOverFlowMenu" parent="Widget.AppCompat.ActionButton.Overflow"> <item name="android:src">@mipmap/ic_launcher</item> </style> 

당신은 ** Theme.AppCompat.NoActionBar **로 부모 값을 가지고있다. 화면 상단에서 작업 표시 줄을 볼 수 있습니까? –

+0

@RahulSharma 예, 맞춤 동작 표시 줄이 있습니다 – Mathew

+0

** 스타일 파일에 ** android : src **를 적용 할 필요가 없습니다. 사용자 정의 작업 표시 줄 레이아웃으로 이동하여 특정 이미지 뷰에 ** android : src **를 적용하십시오. –

답변

0

프로그래밍 할 때 효과가있었습니다. 여기에 같은에 대한 코드를 간다 :

Drawable drawable = ContextCompat.getDrawable(getApplicationContext(), R.drawable.my_overflow); 
toolbar.setOverflowIcon(drawable); 
-1

귀하의 @drawable/my_overflow해야이 하나 같이 XML 드로어 블 : 물론

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android" > 
    <item android:state_pressed="false" 
     android:drawable="@drawable/my_overflow_icon_unpressed"> 
    </item> 
    <item android:state_pressed="true" 
     android:drawable="@drawable/my_overflow_icon_pressed" > 
    </item> 
</selector> 

, 당신이 my_overflow_icon_unopressed을 위해 PNG 당김 파일이 있는지 확인하고 my_overflow_iconPressed

0

당신은 제대로 작동 할 수 있습니다. 당신의 ** AppTheme ** 스타일 클래스

toolbar = (Toolbar) findViewById(R.id.toolbar); 
     toolbar.setTitle("activity"); 
     setSupportActionBar(toolbar); 
+0

똑같은 것만 내 질문에 말했다. 그러나 그것은 효과가 없었습니다. – Mathew

+0

내 업데이트 코드를 확인하십시오, 모든 버전에서 작동합니다. – ViramP

관련 문제