android gridview自定义adapter,adapter中的子控件如何隐藏。

如题所示。我在adapter里想隐藏和显示控件,设置viewHolder.mIvLogo.setVisibility(View.VISIBLE);无效。怎样设置才能有效隐藏显示呢?求帮助!

 viewHolder.mIvLogo.setVisibility(View.VISIBLE);这是显示
 隐藏是
 viewHolder.mIvLogo.setVisibility(View.INVISIBLE);//隐藏但布局占位
 或
 viewHolder.mIvLogo.setVisibility(View.GONE);//布局不占位

先在xml文件中 View.GONE 然后在 adapter的getView方法条件判断设置 View.VISIBLE 就可以啦。是不是你条件判断有问题哦

在内部类中调用外部变量需要加final修饰 而final修饰的变量又是不可变的,你前面就好重新赋值,前后矛盾

像这样
if(producttable.get(position).getProducthascoupon().equals("false")){
holder.listjuan.setVisibility(View.GONE);
}else if (producttable.get(position).getProducthascoupon().equals("true")) {
holder.listjuan.setVisibility(View.VISIBLE);
}

    记住一定要设置隐藏和显示判断

下个断点调试一下就知道了,看程序有没有按你设计的思路走,就能找到问题所在。

感谢大家的回答,不过我都不知道怎么追问,问题不是适配器的原因,我也没有解决。我再看看是什么原因吧。谢谢你们