2016-11-14 1 views
0

SearchView 제안 스타일을 AppCompat.Light 테마 (예 : 흰색 배경의 회색 텍스트)로 변경해야합니다. 그러나 많은 변형을 재 시도했고 누구도 SearchView 제안 스타일을 변경하지 않았습니다.
ScreenshotAndroid에서 SearchView 추천의 스타일을 변경할 수 없음

내 레이아웃 :

<android.support.design.widget.AppBarLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:theme="@style/AppTheme.AppBarOverlay"> 

    <android.support.v7.widget.Toolbar 
     android:id="@+id/toolbar" 
     android:layout_width="match_parent" 
     android:layout_height="?attr/actionBarSize" 
     android:background="?attr/colorPrimary" 
     app:theme="@style/Widget.AppTheme.Toolbar" 
     app:popupTheme="@style/AppTheme.PopupOverlay" /> 

</android.support.design.widget.AppBarLayout> 

스타일 :

<resources> 

    <!-- Base application theme. --> 
    <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> 
     <!-- Customize your theme here. --> 
     <item name="colorPrimary">@color/primary</item> 
     <item name="colorPrimaryDark">@color/primary_dark</item> 
     <item name="colorAccent">@color/accent</item> 
    </style> 

    <style name="AppTheme.NoActionBarTrans"> 
     <item name="windowActionBar">false</item> 
     <item name="windowNoTitle">true</item> 
    </style> 

    <style name="AppTheme.NoActionBar"> 
     <item name="windowActionBar">false</item> 
     <item name="windowNoTitle">true</item> 
    </style> 

    <style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar" /> 

    <style name="AppTheme.PopupOverlay" parent="ThemeOverlay.AppCompat.Light" /> 

    <style name="Widget.AppTheme.Toolbar" parent="Widget.AppCompat.Light.ActionBar.Solid.Inverse"/> 

</resources> 

응용 테마 활동 테마 AppTheme.NoActionBarTrans입니다 AppTheme이다. 내가 뭘 잘못하고 있니? 나는 SearchView 스타일을 선언하려고 시도했지만이 스타일을 무시합니다.

답변

2

당신은 스타일 드롭 다운 프로그래밍 방식

SearchView searchView = new SearchView(context); 
LinearLayout linearLayout1 = (LinearLayout) searchView.getChildAt(0); 
LinearLayout linearLayout2 = (LinearLayout) linearLayout1.getChildAt(2); 
LinearLayout linearLayout3 = (LinearLayout) linearLayout2.getChildAt(1); 
AutoCompleteTextView autoComplete = (AutoCompleteTextView) linearLayout3.getChildAt(0); 
//Set the input text color 
autoComplete.setTextColor(Color.WHITE); 
// set the hint text color 
autoComplete.setHintTextColor(Color.WHITE); 
//Some drawable (e.g. from xml) 
autoComplete.setDropDownBackgroundResource(R.drawable.drop_down_bg); 
+0

감사합니다이 코드를 사용 할 수 있습니다! 나는 스타일을 사용하여 그것을 만드는 방법을 모두 알고 싶다. –

관련 문제