ImageView用shader变灰的问题

icon是一个ImageView, Filter.grayScale(icon.getVirtualRenderer().getSprite());为什么无法变灰,但是传进去一个sprite是没问题的,说明shader没问题,求解答