【问题标题】:Empty views in listview列表视图中的空视图
【发布时间】:2012-07-09 11:33:55
【问题描述】:

在使用 ViewPager 时遇到了一些问题, 我已经使用以下 instantiateItem 方法创建了一个 PagerAdapter

    @Override
    public Object instantiateItem(View collection, int position) {
        View v = in.inflate(R.layout.weeklyoverviewview, null);
        ListView lv = (ListView) v.findViewById(R.id.weeklyoverviewlist);
        WeekAdapter a = new WeekAdapter(cxt, time.plusWeeks(position).getWeekOfWeekyear(), time.plusWeeks(position).getYear());
        lv.setAdapter(a);
        TopNavigatorView nv = (TopNavigatorView) v.findViewById(R.id.weeklyoverviewnavigator);
        nv.setTitle("W" + time.plusWeeks(position).getWeekOfWeekyear() + " - " + time.plusWeeks(position).getYear());
        ((ViewPager) collection).addView(v, 0);
        return v;
    }

WeekAdapter 看起来像

 public class WeekAdapter extends BaseAdapter {

        public ArrayList<View> views;

        public WeekAdapter(Context context, int week, int year) {
            LayoutInflater in = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            views = new ArrayList<View>();
            DateTime d = new DateTime().withYear(year).withWeekOfWeekyear(week);
            for (int i = 0; i < 7; i++) {
                View v = in.inflate(R.layout.weeklyoverviewlisttitle, null);
                TextView t = (TextView) v.findViewById(R.id.weeklytitletext);
                t.setText(d.withDayOfWeek(i + 1).dayOfWeek().getAsText() + ", " + d.withDayOfWeek(i + 1).monthOfYear().getAsText() + " "
                        + d.withDayOfWeek(i + 1).getDayOfMonth() + ", " + d.withDayOfWeek(i + 1).getYear());
                views.add(v);
            }
        }

        public int getCount() {
            return views.size();
        }

        public Object getItem(int arg0) {
            return views.get(arg0);
        }

        public long getItemId(int arg0) {
            return views.get(arg0).getId();
        }

        public View getView(int arg0, View arg1, ViewGroup arg2) {
            return views.get(arg0);
        }

    }

问题是前 3 页看到直接实例化似乎是正确的,但是当我滑动到另一个视图时,我在列表视图中有 7 个项目,但文本为空。 当我使用日志检查 textview 中的文本时,我看到文本设置正确,但我没有出现。

编辑:像这样, http://i50.tinypic.com/108e8ac.png ,无法显示为图像库声誉..

【问题讨论】:

    标签: android android-listview android-viewpager


    【解决方案1】:

    自己找到了解决方案,但不知道为什么它会起作用。 我将 ListView 的高度更改为 fill_parent 而不是 wrap_content

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-09-24
      • 1970-01-01
      • 2018-01-17
      • 2012-07-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多