我在后面按钮和Toolbar
之间的SearchView
左侧留有一个很大的空白区域。我的xml文件看起来像这样
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:layout_scrollFlags="scroll|enterAlways"
android:contentInsetStart="0dp"
app:contentInsetStart="0dp">
<android.support.v7.widget.SearchView
android:id="@+id/search_view"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
</android.support.v7.widget.Toolbar>
在我的Activity
我添加了一个后退按钮
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
如果我将其设置为false则可以正常工作。但我需要一个后退按钮。有办法解决吗?谢谢。
我没有使用menu layout
。
答案 0 :(得分:5)
默认情况下,Toolbar
在后退按钮后有16dp的意图。因此,在app:contentInsetStartWithNavigation="0dp"
中加入Toolbar
,它会删除该空格。
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:layout_scrollFlags="scroll|enterAlways"
android:contentInsetStart="0dp"
app:contentInsetStartWithNavigation="0dp"
app:contentInsetStart="0dp">
答案 1 :(得分:1)
在SearchView
<android.support.v7.widget.SearchView
android:id="@+id/search_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="-16dp"
android:paddingStart="-16dp"/>
并检查它。希望这会对你有所帮助。
答案 2 :(得分:1)
在工具栏中添加这些行
android:contentInsetLeft="0dp"
android:contentInsetStart="0dp"
app:contentInsetLeft="0dp"
app:contentInsetStart="0dp"
android:contentInsetRight="0dp"
android:contentInsetEnd="0dp"
app:contentInsetRight="0dp"
app:contentInsetEnd="0dp"
答案 3 :(得分:0)
使用MaxWidth选项通过onCreateOptionsMenu()方法以编程方式实现
@override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu_search, menu);
SearchView searchView = (SearchView)menu.findItem(R.id.menu_search).getActionView();
searchView.setMaxWidth(Integer.MAX_VALUE);
如果使用Kotlin,请使用:
searchView.maxWidth = Integer.MAX_VALUE