【问题标题】:Inflate layouts in app using ViewPageIndicator library使用 ViewPagerIndicator 库在应用程序中膨胀布局
【发布时间】:2012-01-08 13:28:49
【问题描述】:

我正在阅读关于使用 ViewPageIndicator 库from here

我可以在我的应用程序中看到交换工作。我不理解整个库代码,我试图为每个“页面指示器”夸大我自己的观点,但我不知道如何。 在 ViewPagerAdapter 类中有这个方法:

public Object instantiateItem(View pager, int position) {
    //TextView v = new TextView(context);
    //v.setText(titles[position]);
    //((ViewPager) pager).addView(v, 0);

     LayoutInflater inflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
     View view = inflater.inflate(R.layout.weekevents, null);
     ((ViewPager) pager).addView(view,1);
    return view;
}

我应该明白我应该在这里扩充我的布局吗?我为要交换的每个页面都有一个布局。如果我夸大布局weekevents 什么都没有发生。 我没有发布任何代码,因为它与上面的链接相同。 现在我正在尝试了解如何使用它。 任何想法都会很棒。

【问题讨论】:

    标签: android swap


    【解决方案1】:

    我会说,您应该重写 instantiateItem() 并为每个页面添加适当的布局。 (如果位置为 1,则扩展此布局,如果位置为 2,则扩展另一个等)。

    上面的代码 sn-p 不会根据位置来区分资源。

    【讨论】:

    • hm, thx :) 我不会只返回一个特定的视图,即使我有更多?像这样:LayoutInflater weekInflater = (LayoutInflater) context .getSystemService(Context.LAYOUT_INFLATER_SERVICE); View viewWeek = weekInflater.inflate(R.layout.weekevents, null); ((ViewPager) pager).addView(viewWeek, 0); LayoutInflater dayInflater = (LayoutInflater) context .getSystemService(Context.LAYOUT_INFLATER_SERVICE); View viewDay = dayInflater.inflate(R.layout.dayevents, null); ((ViewPager) pager).addView(viewDay, 1); return viewWeek;
    • 它要求您初始化寻呼机中特定位置的视图 - 所以您只需交付它。它与列表适配器的模式相同 - 它要求您提供适合项目编号 x 的视图 - 您膨胀并设置它
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多