【问题标题】:Viewpager doesn't update/loads xml itemsViewpager 不更新/加载 xml 项目
【发布时间】:2012-01-15 09:43:26
【问题描述】:

我用 viewpager 解决了 onclicklistsner 问题,但现在我注意到它取决于 XML 布局文件中的所有元素。

我使用该教程实现了一个 ViewPager:tutsplus

现在我遇到了问题,我在 XML 中定义的所有对象都被正确实例化(在 findViewById 等之后的 Debuggin 模式下不是 null),但我无法引用它们。 为了更好地理解它,我的 PagerAdapter:

class MyPagerAdapter extends PagerAdapter {

    public int getCount() {
        return 3;
    }

    public Object instantiateItem(View collection, int position) {

        LayoutInflater inflater = (LayoutInflater) collection.getContext()
                .getSystemService(Context.LAYOUT_INFLATER_SERVICE);

        int resId = 0;
        switch (position) {
        case 0:
            resId = R.layout.settings_view;

            break;
        case 1:
            resId = R.layout.push_view;
            break;
        case 2:
            resId = R.layout.listen_view;
            break;

        }
        View view = inflater.inflate(resId, null);

        ((ViewPager) collection).addView(view, 0);

        return view;


    }

    @Override
    public void destroyItem(View arg0, int arg1, Object arg2) {
        ((ViewPager) arg0).removeView((View) arg2);

    }

    @Override
    public boolean isViewFromObject(View arg0, Object arg1) {
        return arg0 == ((View) arg1);

    }

    @Override
    public Parcelable saveState() {
        return null;
    }
    public int getItemPosition(Object object) {
        return POSITION_NONE;
    }


}

这里是我的适配器实现和一些示例代码:

 ViewPager myPager = (ViewPager)findViewById(R.id.pager);
        adapter = new MyPagerAdapter();
       myPager.setAdapter(adapter);
       myPager.setCurrentItem(0);

微调器微调器 = (Spinner)listenView.findViewById(R.id.Dashboard_chooser); 按钮推送 = (Button)pushview.findViewById(R.id.pushbutton);

ArrayAdapter spinnerArrayAdapter = new ArrayAdapter(getApplicationContext(),android.R.layout.simple_spinner_item, si);


            spinner.setAdapter(spinnerArrayAdapter);



push.setOnClickListener(new OnClickListener() {


            public void onClick(View v) {

//do something
});

Button 和 Spinner 都没有做任何事情。它们都被正确实例化了,但我无法单击按钮,也无法让 Spinner 填充 SpinnerItems 数组。

在 Debu 模式下,我查了一下,它们都被实例化了,SpinnerItemArray (si) 得到它的值等等。

顺便说一句,在我实现 ViewPager 之前,所有的东西都工作了,当在 XML 中设置 android:onClick 然后在代码中定义方法时,按钮也可以工作,但这对 Spinner 不起作用,所以我认为它一定是 instanceiteItem 方法或类似方法有问题。

这里有人知道问题吗? 如果有人可以提供帮助,那就太酷了。 你的弗洛

【问题讨论】:

    标签: android android-viewpager instant


    【解决方案1】:
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-07-22
    • 1970-01-01
    • 2017-03-12
    • 1970-01-01
    • 2011-08-20
    • 2013-05-26
    • 1970-01-01
    相关资源
    最近更新 更多