造型searchView(白色)

时间:2015-04-13 20:30:21

标签: android android-actionbar styling searchview

有没有办法隐藏此屏幕截图中显示的图标http://s2.postimg.org/8nip77c7d/aaaa.png ........(看起来我的帖子主要是代码,所以我添加了这个) 这是我的代码:

    sv = new SearchView(context);
    MenuItem mi = menu.findItem(R.id.action_search);
    mi.setActionView(sv); 

    int searchIconId = sv.getContext().getResources().
            getIdentifier("android:id/search_button", null, null);
    ImageView searchIcon = (ImageView) sv.findViewById(searchIconId);
    searchIcon.setImageResource(R.drawable.ic_action_action_search);

    try {
        SearchManager searchManager = (SearchManager)    getSystemService(Context.SEARCH_SERVICE);
          sv.setSearchableInfo(searchManager.getSearchableInfo(getComponentName()));
        Field searchField = null;

        searchField = SearchView.class.getDeclaredField("mCloseButton");

        searchField.setAccessible(true);
        ImageView closeBtn = null;
        closeBtn = (ImageView) searchField.get(sv);


        closeBtn.setImageResource(R.drawable.ic_action_content_clear); 
        int searchTextViewId = sv.getContext().getResources().getIdentifier("android:id/search_src_text", null, null);
        TextView searchTextView = (TextView)  sv.findViewById(searchTextViewId);
        searchTextView.setTextColor(Color.parseColor("#ffffff"));
    } catch (NoSuchFieldException e)
    {
        Log.e("sv",e.getMessage(),e);
    }
    catch (IllegalAccessException e)
    {
        Log.e("sv",e.getMessage(),e);
    }

1 个答案:

答案 0 :(得分:0)

我通过编写提示解决了这个问题,在前一个代码的末尾添加了这个代码

        searchTextView.setTextColor(Color.parseColor("#ffffff"));
        searchTextView.setHintTextColor(Color.parseColor("#aaffffff"));
        searchTextView.setHint(getString(R.string.recherche));

此处截图http://s16.postimg.org/yt1wogfx1/Screenshot_2015_04_13_22_11_35.png