【问题标题】:Shortening the length of SearchView on Toolbar in Android缩短Android Toolbar上SearchView的长度
【发布时间】:2016-01-20 06:33:06
【问题描述】:

单击搜索图标后,我正在尝试缩短 SearchView 的长度,因为它与您在此处看到的 ImageView 徽标发生冲突:

我希望它在不聚焦时保持这种状态:

我希望 SearchView 扩展到 ImageView 徽标的末尾。 这是我的工具栏代码:

<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.Toolbar
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/outnix_toolbar"
    android:layout_width="match_parent"
    android:layout_height="?attr/actionBarSize">

    <ImageView
        android:layout_width="80dp"
        android:layout_height="30dp"
        android:src="@drawable/outnix_logo_big"/>


</android.support.v7.widget.Toolbar>

菜单项代码:

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
      xmlns:app="http://schemas.android.com/apk/res-auto">

    <item
        android:id="@+id/preferences_menu_item"
        android:title="@string/preferences"
        app:showAsAction="never"/>

    <item
        android:id="@+id/sign_in_menu_item"
        android:title="@string/sign_in"
        app:showAsAction="never"/>

    <item
        android:id="@+id/search_menu_item"
        app:actionLayout="@layout/searchview"
        app:showAsAction="ifRoom"
        android:title="@string/search"/>

</menu>

还有SearchView 代码:

<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.SearchView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

</android.support.v7.widget.SearchView>

我尝试将 SearchViewlayout_width 更改为 200dp 而不是 match_parent 但这就是发生的事情:

我希望搜索图标保留在右侧(在溢出菜单图标之前),但在徽标之前扩展 SearchView 的长度。这可能吗?如果是,任何帮助表示赞赏!

【问题讨论】:

  • 只改变搜索视图的宽度
  • @Don'tBenegative 你是什么意思?我展示了当您更改 layout_width 时会发生什么。它不像我想要的那样工作。
  • 你可以添加margin left = "80dp" of searchview.. 看看这是否有效
  • @Kool 我和margin_start 一起尝试过,但都没有成功。它和我的第一张照片完全一样:/

标签: android xml android-toolbar searchview


【解决方案1】:

只需在图像视图和搜索视图中添加一个 ID

在搜索视图中添加这个额外的行 android:layout_toRightOf="@+id/imageviewl"

像这样使用您的搜索视图 为图像视图保留一个 ID

<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.Toolbar
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/outnix_toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize">

<ImageView
    android:layout_width="80dp"
    android:layout_height="30dp"
    android:src="@drawable/outnix_logo_big"/>

并将您的搜索视图更改为此

<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.SearchView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_toRightOf="@+id/imageviewl"
    android:layout_width="wrap_content"
    android:layout_height="?attr/actionBarSize">
</android.support.v7.widget.SearchView>

【讨论】:

  • 我试过了,没有任何改变。看起来和第一张照片一模一样。感谢您的尝试!
  • 尝试wrap_content insted of match_parent 如果可能,请在尝试此操作后发布您的屏幕
  • 我做了,同样的事情:/如果有任何变化,我会发布它,但它看起来和第一张照片一模一样。
猜你喜欢
  • 2015-03-01
  • 2015-01-15
  • 2016-04-13
  • 1970-01-01
  • 2016-05-20
  • 2015-07-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多