我正在通过菜单将SearchView添加到我的工具栏:
<%= f.fields_for :image do |ff| %>
<%= ff.label :image %>
<%= ff.file_field :image %>
<% end %>
我不知道为什么但是SearchView被移到了右边: Understanding the Table Service Data Model
任何想法为什么会发生这种情况?
答案 0 :(得分:1)
我遇到了同样的问题,尝试以编程方式添加:
searchView.setMaxWidth( Integer.MAX_VALUE );
如果这不起作用,请尝试将<item>
标记替换为<SearchView>
如果使用API 20及更高版本,请执行此操作
将其添加到您的styles.xml
文件中:
/*Theme name and parent can be different - depends on the one that already
declared in you manifest under the tag <application> theme:AppTheme*/
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> /
<item name="searchViewStyle">@style/SearchView</item>
</style>
<style name="SearchView" parent="Widget.AppCompat.SearchView">
<item name="android:maxWidth">@dimen/maxSize</item>
</style>
<dimen name="maxSize">1000dp</dimen>
答案 1 :(得分:0)
我遇到了同样的问题,但在我的情况下,碰巧我在工具栏中(在布局文件中)有一个菜单抽屉图标图像,同时以编程方式启用了主页按钮
getSupportActionBar().setDisplayHomeAsUpEnabled(true)
将其设置为false(或删除此代码)会释放抽屉图标和SearchView的空间。希望这有助于某人。
答案 2 :(得分:0)
override fun onCreateOptionsMenu(menu: Menu?): Boolean {
menuInflater.inflate(R.menu.options_menu, menu)
// Make SearchView fill screen width
((menu?.findItem(R.id.action_bar_search)?.actionView) as SearchView).apply {
maxWidth = 1999
}
return true
}
action_bar_search
是菜单xml中项目ID的名称https://developer.android.com/training/search/setup#create-sc