5

Ich versuche, ein SearchView in meinem Layout (nicht innerhalb einer ToolBar oder ActionBar) zu verwenden.Android AppCompat SearchView EditText fehlende untere Zeile auf Pre-Lollipop

Ich benutze AppCompat, aber es sieht anders auf Pre-Lollipop. Dem EditText fehlt der untere Rand in Pre-Lollipop-Geräten.

Lollipop Suche zeigt Grenze richtig: Lollipop SearchView with bottom border

Pre-Lutscher Suche zeigt keine Grenze: Pre-lollipop SearchView with NO bottom border

Mein Thema ist einfach:

<style name="Theme.Base" parent="Theme.AppCompat.Light.DarkActionBar"> 
    <!-- TOOLBAR --> 
    <item name="android:windowNoTitle">true</item> 
    <item name="windowActionBar">false</item> 
    <item name="windowNoTitle">true</item> 
    <!-- Search --> 
    <item name="searchViewStyle">@style/MySearchViewStyle</item> 
    <item name="android:searchViewStyle">@style/MySearchViewStyle</item> 
    <!-- COLOURS --> 
    <item name="colorPrimary">@color/primary</item> 
    <item name="colorPrimaryDark">@color/primary_dark</item> 
    <item name="colorAccent">@color/accent</item> 
    </style> 
    <style name="MySearchViewStyle" parent="Widget.AppCompat.SearchView"> 
    <item name="android:editTextStyle">@style/EditText</item> 
    <item name="editTextStyle">@style/EditText</item> 
    </style> 
    <style name="EditText"> 
    <item name="android:layout_height">wrap_content</item> 
    <item name="android:layout_width">wrap_content</item> 
    <item name="android:inputType">text</item> 
    <item name="android:cursorVisible">true</item> 
    <item name="android:maxLength">1000</item> 
    <item name="android:selectAllOnFocus">true</item> 
    <item name="android:paddingTop">4dp</item> 
    </style> 

Jede Hilfe meine Stile im Einklang würde bekommen Sei super danke.

+0

nach der Aktualisierung auf die neueste Unterstützung lib das gleiche Problem Bemerkt verwendet @null zu bekommen. Vorherige Version hat kein solches Problem. Suche weiter nach einer Lösung. – httpdispatch

+0

Ah, das könnte es dann erklären, da ich die alte Version nicht hatte, habe ich erst letzte Woche die Design-Bibliothek hinzugefügt. :-( Lassen Sie mich wissen, wenn Sie eine Lösung finden. Danke – Daisy

Antwort

5

Wie pro Quellcode bei https://github.com/android/platform_frameworks_support/blob/master/v7/appcompat/res/layout/abc_search_view.xml

search_src_text Ansicht hat gesetzt Hintergrund

Um Unterm Strich i

searchView.findViewById(android.support.v7.appcompat.R.id.search_src_text).setBackgroundResource(R.drawable.abc_textfield_search_default_mtrl_alpha); 
+0

Ab der Support-Bibliothek Version 25.0.0, '((View) searchView.findViewById (android.support.v7.appcompat.R.id.search_src_text) .getParent()). setBackgroundResource (0); 'muss für SearchViews aufgerufen werden, die ebenfalls nicht Teil der Toolbar sind. – 0101100101