2012-12-03 46 views
0

我想在MultiAutocompleteTextView上应用样式,但样式似乎没有应用。在MultiAutoCompleteTextView上应用样式

在style.xml我有如下(只显示部分):既然主题是对整个应用程序应用

<MultiAutoCompleteTextView 
    android:id="@+id/multiAutoCompleteTextView1" 
    android:visibility="gone" /> 

<style name="AppTheme" parent="android:Theme.Light"> 
    <item name="android:buttonStyle">@style/Button</item> 
    <item name="android:imageButtonStyle">@style/ImageButton</item> 
    <item name="android:editTextStyle">@style/Edit</item> 
    <item name="android:autoCompleteTextViewStyle">@style/AutoCompleteTextView</item> 
    <!-- In the line above I tried to set "android:multiAutoCompleteTextViewStyle" but that doesn't seem to work. My guess is that it is because MultiAutoCompleteTextView is a subclass of AutoCompleteTextView --> 
</style> 

... 

<style name="AutoCompleteTextView" parent="@android:style/Widget.AutoCompleteTextView"> 
    <item name="android:completionHintView">@layout/completion_hint</item> 
    <item name="android:background">@drawable/edit</item> 
    <item name="android:layout_width">fill_parent</item> 
    <item name="android:layout_height">wrap_content</item> 
    <item name="android:layout_marginBottom">5dp</item> 
    <item name="android:layout_marginLeft">5dp</item> 
    <item name="android:layout_marginRight">5dp</item> 
    <item name="android:layout_marginTop">5dp</item> 
    <item name="android:ems">10</item> 
    <item name="android:gravity">top</item> 
    <item name="android:lines">1</item> 
    <item name="android:singleLine">true</item> 
    <item name="android:textColor">@color/black</item> 
</style>` 

而在我的布局文件我有以下它也应该应用于MultiAutocompleteTextView。但是,当我尝试执行我得到以下错误的应用程序:

12-03 02:00:34.398: E/AndroidRuntime(591): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.myapp/com.example.myapp.MyActivity}: java.lang.RuntimeException: Binary XML file line #37: You must supply a layout_width attribute. 

回答

0

当你重写一个主题或风格,你只能够改写的样式声明指定的attrs。 layout_ * attr未在Widget.AutoCompleteTextView中声明,您应该将layout_ *放置在您指定的视图中

+0

谢谢!这解决了它。 – gabga

+0

你可以请发布解决方案@ gabga?谢谢。 – toobsco42

+0

我已经离开了一段时间,所以直到现在我还没有看到您的评论。我从事这项工作已经有一段时间了,但是如果我找到了我正在开发的代码,我会发布解决方案。 – gabga