android - 可以在自定义对话框中使用 ViewPager 吗?

标签 android dialog nullpointerexception android-viewpager

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

当我运行应用程序时,ViewPager 对象抛出一个 nullpointerexception..

请帮忙

我的自定义对话框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 添加了这些页面...

下面的代码存在于主要 Activity 的 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

最佳答案

如果您在 R.layout.dialog 中使用 ViewPager,则必须在初始化时提供 View 对象的引用。像这样更改您的代码,

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

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

关于android - 可以在自定义对话框中使用 ViewPager 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11257830/

相关文章:

java - InputStreamReader ClassPath 处的 NULL 指针

android - 如何从 shell 中退出 APK

java.lang.NullPointerException...崩溃报告

java - 当我尝试显示 DatePickerDialog 时出现 BadTokenException

java - java中的自定义对话框

android.graphics.drawable.Drawable.isProjected()' 在空对象引用上

java - Android Studio : java. lang.NullPointerException:尝试在空对象引用上调用虚拟方法 [TextView]

android - gRPC Android 客户端失去连接 "too many pings"

android - 将图像包装到android中的cardView

c# - 如何制作一个小的帮助对话框?