gpt4 book ai didi

java - 使用 Viewpager 膨胀 SliderImages 时出现运行时错误

转载 作者:行者123 更新时间:2023-12-02 12:14:34 27 4
gpt4 key购买 nike

这是我的库存 fragment //

 public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {

View view = inflater.inflate(R.layout.fragment_stock, container, false);
slideDotspanel = (LinearLayout) view.findViewById(R.id.SliderDots);

gridview = (GridView) view.findViewById(R.id.custom_grid);
gridview.setAdapter(new CustomAdapter(this, osNameList, osImages));

viewPager = (ViewPager) view.findViewById(R.id.viewpager);
adapter = new ViewPagerAdapter(this.getActivity());
viewPager.setAdapter(adapter);
return view;
<小时/>

这是我的 stockfragment.xml//

<android.support.v4.view.ViewPager
android:layout_width="wrap_content"
android:id="@+id/viewPager"
android:layout_height="200dp"
android:layout_marginBottom="8dp" />
<LinearLayout
android:id="@+id/SliderDots"
android:layout_below="@+id/viewPager"
android:orientation="horizontal"
android:gravity="center_horizontal|center_vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content">

</LinearLayout>
<小时/>

这是我的 ViewPagerAdapter 类//

   class ViewPagerAdapter extends PagerAdapter {

private int[] image_resource = {R.drawable.arrow, R.drawable.bin, R.drawable.gallery, R.drawable.got};
private Context ctx;
private LayoutInflater layoutInflater;

public ViewPagerAdapter(Context ctx) {
this.ctx = ctx;
}

@Override
public int getCount() {
return image_resource.length;
}

@Override
public boolean isViewFromObject(View view, Object object) {
return (view == (ImageView)object);
}

@Override
public Object instantiateItem(ViewGroup container, int position) {
layoutInflater = (LayoutInflater) ctx.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View item_view = layoutInflater.inflate(R.layout.custom_layout, container, false);
ImageView imageview = (ImageView) item_view.findViewById(R.id.imageView);
imageview.setImageResource(image_resource[position]);

container.addView(item_view);
//((ViewPager) container).addView(item_view, 0);
return item_view;
}

@Override
public void destroyItem(ViewGroup container, int position, Object object) {
container.removeView((LinearLayout)object);
}
<小时/>

这是 ViewPagerAdapter.xml//

android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.v7.widget.AppCompatImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@mipmap/ic_launcher"
android:id="@+id/imageView"
/>

<小时/>

我的日志猫错误是

java.lang.NullPointerException: Attempt to invoke virtual method 'void android.support.v4.view.ViewPager.setAdapter(android.support.v4.view.PagerAdapter)' on a null object reference at com.example.admin.navigationandtabbed.StockFragment.onCreateView(StockFragment.java:79) at android.support.v4.app.Fragment.performCreateView(Fragment.java:2080) at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1108) at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1290) at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:801)

<小时/><小时/>

说明 ---

StockFragment fragment 中的此代码存在运行时错误,该错误会抛出空指针异常。当我从 Activity 执行此操作时,但当我在 Fragment 上执行此操作时,同一 block 正在运行。它抛出错误。

请帮忙提前谢谢您。

最佳答案

viewPager 与 viewpager 不同

在 StockFragment.java 上

viewPager = (ViewPager) view.findViewById(R.id.viewpager);

修改为

viewPager = (ViewPager) view.findViewById(R.id.viewPager);

关于java - 使用 Viewpager 膨胀 SliderImages 时出现运行时错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46282990/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com