0

我正面临一个非常奇怪的现象。我正在使用兼容性包中的 ViewPager 来显示配置文件。

每个配置文件都只是一个包含自定义元素的 ListView。每个元素都有两种状态:

  1. 有数据 - 显示它
  2. 没有数据 - 显示占位符

每次在配置文件之间滑动时,我都会重置项目对象中的数据。当我删除 REST-Calls 并让配置文件项目为空时 - 这应该显示占位符 - 所有项目都保持空白。

可能是什么问题呢?

编辑:/

这就是我在列表视图中设置当前项目的方式。PageViewAdapter 似乎没问题,如果我使用静态内容,一切都很完美。

    final TextView lblTitle = (TextView)convertView.findViewById(R.id.lblTitle);
    final LinearLayout llContent = (LinearLayout)convertView.findViewById(R.id.llContent);
    final ProfileItem item = getItem(userPosition);


    String title = item.getTitle();
    if(title == null || title.equals("")) {
        lblTitle.setVisibility(View.GONE);
    } else {
        lblTitle.setText(item.getTitle());
    }

    if(item.getContent().getParent() != null) {
        ((ViewGroup)item.getContent().getParent()).removeAllViews();
    }

    llContent.removeAllViews();
    llContent.addView(item.getContent());

这些项目看起来都非常相似:

@Override
public View getContent() {
    if(isTextEmpty()) {
        return noTextTherePlaceholder;
    } else {
        return view;
    }
}

即使我只返回视图或 noTextTherePlaceholder,效果也保持不变。

如果我在 getView 方法中设置像 TextView 这样的新视图,一切都会按预期工作。

4

1 回答 1

0

使用视图寻呼机,您必须获取所有数据Activity.onCreate,然后在 ViewPagers 适配器中使用该数据onInstantiateItem

于 2012-04-24T09:59:00.013 回答