2

我正在尝试在自定义对话框中使用 ViewPager ...可以使用吗?我在自定义对话框 xml 中使用 v4 支持库“android.support.v4.view.ViewPager”。

当我运行应用程序时,ViewPager 对象会抛出一个空指针异常。

请帮忙

我的自定义对话框 xml 文件如下:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:minWidth="300dp"
    android:minHeight="400dp"
    android:orientation="vertical" >

    <android.support.v4.view.ViewPager
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:id="@+id/myfivepanelpager"
        android:tag="test"/>
</LinearLayout>

我在 viewpager 中添加了 5 个页面,我使用 PagerAdapter 添加了这些页面......

以下代码存在于主要活动 onCreate() 方法中:

Dialog d = new Dialog(this);
Window window = d.getWindow();
window.setFlags(WindowManager.LayoutParams.FLAG_BLUR_BEHIND, WindowManager.LayoutParams.FLAG_BLUR_BEHIND);
d.setTitle("Dialog");
d.setContentView(R.layout.dialog);

final MyPagerAdapter adapter = new MyPagerAdapter();
final ViewPager myPager = (ViewPager) findViewById(R.id.myfivepanelpager);
myPager.setAdapter(adapter);
myPager.setCurrentItem(2);

在这里,我的寻呼机返回 null ......当我运行代码时,它显示 nullpointerexception

4

1 回答 1

2

如果您有您的 ViewPager R.layout.dialog,那么您必须在初始化时提供您的视图对象的引用。像这样更改您的代码,

final ViewPager myPager = (ViewPager)d. findViewById(R.id.myfivepanelpager); 

像我在这里所做的那样添加对话框“d”的对象并检查。

于 2012-06-29T07:52:16.363 回答