当我把它放在工具栏或操作栏上时,我对这个元素的宽度有一些问题。看起来像这样:
SearchView没有问题:
使用SearchView可以,但不想在我的代码中使用变通方法。 我能做什么?我正在使用最新版本的appcompat库。
search_custom:
<AutoCompleteTextView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/autoCompleteTextView_searchWidget"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="5dp"
android:textColor="@color/black"
android:imeOptions="actionSearch"
android:inputType="text">
<requestFocus/>
</AutoCompleteTextView>
menu.xml文件:
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item android:id="@+id/action_search"
android:name="search"
android:title="@string/search"
android:imeOptions="actionSearch"
android:inputType="textAutoComplete|textAutoCorrect"
app:actionLayout="@layout/search_custom"
android:icon="@drawable/ic_search"
app:showAsAction="ifRoom|collapseActionView"/>
</menu>
摇篮:
compile 'com.android.support:appcompat-v7:21.0.+'
解决了!美丽的解决方法:
int screenWidth = new ViewUtil(this).getScreenWidth(); // This guy return the width of the device
if(screenWidth <= 10) {
creenWidth = 150;
}
mAutoCompleteTextView.setMinWidth(screenWidth);
答案 0 :(得分:2)
看起来你缺少AutoCompleteTextView上的minWidth
答案 1 :(得分:0)
在我的情况下,使用此代码:
textView.setLayoutParams(new ViewGroup.LayoutParams(
ViewGroup.LayoutParams.MATCH_PARENT,
ViewGroup.LayoutParams.WRAP_CONTENT));