【问题标题】:How to add an icon image as hint to EditBox in Android如何在 Android 中向 EditBox 添加图标图像作为提示
【发布时间】:2015-11-06 17:25:58
【问题描述】:

我需要将搜索图像镜头作为提示在 EditText 中。安卓可以吗?

最好的问候,,,

【问题讨论】:

    标签: android


    【解决方案1】:

    我总是通过更改可绘制权限来解决这个问题。

    您可以在布局 xml 文件 android:drawableRight="@drawable/search_icon" 上执行此操作,或以编程方式使用 setCompoundDrawablesWithIntrinsicBounds 函数。

    希望对您有所帮助! :)

    【讨论】:

    • 非常感谢.. 神奇的炒锅!! ...只有一个问题,它将图标显示在编辑框的右侧而不是左侧...那么如何使显示在左侧?
    • 只需使用 android:drawableLeft 代替 :) 你可以使用左、右、上和下
    【解决方案2】:

    将带有搜索图标的背景设置为 editText 并在点击事件时使用 textWatcherclickListenertouchListener 将其清除。

    【讨论】:

      【解决方案3】:

      我有你所要求的解决方案。它工作得很好,但请记住,Unicode 支持在 Android 上是错误的。

      1) 在这里从 unicode 中选择一个你喜欢的字符 http://www.fileformat.info/info/unicode/char/1f50e/index.htm 然后选择支持它的字体(并具有适合您设计的视觉表示)。

      2) 下载该字体(留意许可和 ttf 文件大小)

      3) 将下载的字体放在 assets 文件夹中,例如 Symbola.ttf

      4) 在您的 on create 方法中执行此操作

          Typeface font = Typeface.createFromAsset(getAssets(), "Symbola.ttf");
          txtSearch.setHint("\uD83D\uDD0E");
          txtSearch.setTypeface(font);
      //Unfortunatly you can't define "\uD83D\uDD0E" in strings xml, that is not supported.
      

      5) 如果你不喜欢字体集中的字符 txtSearch.setTypeface(Typeface.DEFAULT);当用户开始输入时(使用文本观察器 onTextChanged(...))

      【讨论】:

      • 编辑:我刚刚重新测试了它,现在看起来要简单得多,但我不能保证它适用于所有手机或操作系统版本。你可以设置 txtSearch.setHint("\uD83D\uDD0E");在 onCreate 并有一个放大镜符号
      猜你喜欢
      • 2018-02-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-15
      相关资源
      最近更新 更多