Android 滚动列表视图会导致按钮不可见

Android 滚动列表视图会导致按钮不可见,android,listview,Android,Listview,我有一个列表视图,它在列表的每一行中都包含一个按钮。 基于一个字段,我想使这个按钮不可见 适配器内的我的getView方法如下所示 public View getView(int position, View convertView, ViewGroup parent) { // TODO Auto-generated method stub Activity activity = (Activity) getContex

我有一个列表视图,它在列表的每一行中都包含一个按钮。 基于一个字段,我想使这个按钮不可见

适配器内的我的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()
中提供不可见的
有问题吗。请回复。提前感谢。

添加以下内容:

if(details.check()) {
   btn.setVisibility(View.INVISIBLE);
}
else {
   btn.setVisibility(View.VISIBLE);
}
而且…它最好能用

LayoutInflater.from(getContext()) 

将listview的可单击属性设置为xml或类似格式中的false,而不是
activity.getLayoutFlater()

getListView().setClickable(false);