冰淇淋三明治:
我想通过标准的Action View机制向ActionBar 添加一个AutoCompleteTextView(因为SearchView在ICS之前不可用,我也在使用ActionBarSherlock):
<item android:id="@+id/menu_search" android:actionViewClass="com.example.AutoCompleteActionView" android:showAsAction="ifRoom" android:title="@string/address"></item>
<item android:id="@+id/menu_close" android:icon="@drawable/ic_menu_close_clear_cancel" android:showAsAction="always"></item>
<item android:id="@+id/menu_ok" android:icon="@drawable/ic_menu_ok" android:showAsAction="always"></item>
Run Code Online (Sandbox Code Playgroud)
这可行,但默认情况下它不会占用ActionBar中的可用空间,我想要这样做.
我查看了SearchView的源代码,看了它如何覆盖onMeasure,并为我自己的类做了同样的事情,我从AutoCompleteTextView派生.当我这样做时,AutoCompleteTextView消耗所有空间,没有空间用于我想要显示在其右侧的两个菜单项.
当MeasureSpec.getMode()为MeasureSpec.AT_MOST时,看起来MeasureSpec.getSize()返回的宽度没有考虑其他两个菜单项.
有人做过类似的事吗?有什么建议?
谢谢,达米安