ViewPager中的ListView - ListView中的项目保持空白

时间:2012-04-24 09:52:00

标签: android listview android-viewpager

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

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

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

    可能是什么问题?

    编辑:/

    这就是我在listview中设置当前项目的方式。 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;
        }
    }
    

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

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

1 个答案:

答案 0 :(得分:0)

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