我有一个列表视图,其中包含列表中的每一行按钮。 基于一个字段,我想让这个按钮不可见。滚动listview导致按钮不可见
我在适配器内的getView方法如下所示。
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
Activity activity = (Activity) getContext();
View view = convertView;
if (convertView == null) {
LayoutInflater inflater = activity.getLayoutInflater();
view = inflater.inflate(R.layout.listrow, null);
}
final Details details = getItem(position);
Button btn = (Button) view.findViewById(R.id.btn);
if(details.check()) {
btn.setVisibility(View.INVISIBLE);
}
}
当我加载此页时,数据正确。但是,当简单地滚动浏览这个列表时,这个按钮就变得不可见了。这是什么原因?当我删除if
部分时,即使滚动,我也会得到所有行的按钮。 getView()
内部invisible
是否有问题?请回复。提前致谢。