如何隐藏searchview searchicon

时间:2015-06-26 17:10:10

标签: android

我试图在搜索视图中隐藏图标:

enter image description here

我正在使用此代码:

  ((ImageView) searchView.findViewById(searchView.getContext().getResources()
            .getIdentifier("android:id/search_mag_icon", null, null)))
            .setLayoutParams(new LinearLayout.LayoutParams(0, 0));

我无法弄明白为什么它不起作用,因为我使用相同的代码来隐藏关闭图标并且它工作正常:

    ((ImageView) searchView.findViewById(searchView.getContext().getResources()
            .getIdentifier("android:id/search_close_btn", null, null)))
            .setLayoutParams(new LinearLayout.LayoutParams(0, 0));

搜索图标的标识符是否正常?

1 个答案:

答案 0 :(得分:0)

可能(可能)此图标无效(重绘)有时会设置新LayoutParams(覆盖您的图标)。你应该检查(看)Android源代码,但有更简单的解决方案尝试 - 而不是设置新的params可能尝试设置透明drawable,可能使用new ColorDrawable(Color.TRANSPARENT);

创建

如果此标识符有误,则应获取NullPointerException

另外:对于检查View参数或(和)ID,您可以使用Hierarchy Viewer,它会转储设备的整个屏幕(模拟器)。更多HERE(以及Google中)

(很多括号)