Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Android中为每个ViewPager显示一个JSON对象?_Android_Android Studio_Android Viewpager - Fatal编程技术网

如何在Android中为每个ViewPager显示一个JSON对象?

如何在Android中为每个ViewPager显示一个JSON对象?,android,android-studio,android-viewpager,Android,Android Studio,Android Viewpager,我正在开发一个简短的新闻应用程序。它是从URL解析的JSON。我想在每个查看页面上显示一条新闻。在下一个查看页面上滑动时,我想显示下一条新闻,如列表所示。如何使用ViewPager实现这一点?您可以将PagerAdapter用于ViewPager并创建自定义xml布局和 按位置在单元格上设置视图。将列表传递到适配器构造函数中的寻呼机适配器中 您可以参考此链接,它将对您有所帮助 将JSON数据设置为PagerAdapter,就像我们设置为基本适配器或其他适配器一样&为适配器创建自定义布局 查看

我正在开发一个简短的新闻应用程序。它是从URL解析的JSON。我想在每个查看页面上显示一条新闻。在下一个
查看页面上滑动时,我想显示下一条新闻,如列表所示。如何使用
ViewPager
实现这一点?

您可以将
PagerAdapter
用于
ViewPager
并创建自定义xml布局和 按位置在单元格上设置视图。将列表传递到适配器构造函数中的寻呼机适配器中

您可以参考此链接,它将对您有所帮助


将JSON数据设置为PagerAdapter,就像我们设置为基本适配器或其他适配器一样&为适配器创建自定义布局

查看\u pager\u layout.xml


您可以在ViewPager中加载片段,每个片段都可以获取它所需的信息。这里有一些开始的链接。您是否有GitHub存储库链接。请加上。
<RelativeLayout
        android:id="@+id/loutPager"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:gravity="center">

        <android.support.v4.view.ViewPager
            android:id="@+id/viewPager"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_above="@+id/loutCirIndicator"
            android:background="@android:color/transparent"
            android:padding="5dp"/>


        <LinearLayout
            android:id="@+id/loutCirIndicator"
            android:layout_width="match_parent"
            android:layout_height="20dp"
            android:layout_alignParentBottom="true"
            android:background="@android:color/transparent"
            android:gravity="center_vertical"
            android:orientation="horizontal">


            <me.relex.circleindicator.CircleIndicator
                android:id="@+id/indicator"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_gravity="center"
                android:gravity="center"
                app:ci_drawable="@drawable/bg_selected_indicator"
                app:ci_drawable_unselected="@drawable/bg_unselected_indicator" />
        </LinearLayout>

    </RelativeLayout>
<LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:gravity="center"
        android:orientation="vertical">

        <ImageView
            android:id="@+id/imageView"
            android:layout_width="match_parent"
            android:layout_height="200dp"
            android:adjustViewBounds="true"
            android:clickable="false"
            android:scaleType="centerInside" />

        <TextView
            android:id="@+id/textView"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:text="abc" />

    </LinearLayout>
public class SamplePagerAdapter extends PagerAdapter {
    Activity activity;
    List<Response_Model> Arr_ResultList;
    ImageView imageView;
    TextView textView;

    public SamplePagerAdapter(final Activity activity,final  List<Response_Model> Arr_ResultList) {
        this.activity = activity;
        this.Arr_ResultList = Arr_ResultList;
    }

    @Override
    public int getCount() {
        return Arr_ResultList.size();
    }

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

    @Override
    public Object instantiateItem(ViewGroup container, int position) {

        final int pos = position;

        View view = LayoutInflater.from(container.getContext()).inflate(R.layout.row_pager_item, container, false);
        imageView = (ImageView) view.findViewById(R.id.imageView);
        textView = (TextView) view.findViewById(R.id.textView);

            Glide.with(activity).load(Arr_ResultList.get(pos).getImage())
                    .thumbnail(0.5f)
                    .crossFade()
                    .diskCacheStrategy(DiskCacheStrategy.ALL)
                    .into(imageView);

            textView.setText(Arr_ResultList.get(pos).getName());


        container.addView(view);

        return view;

    }

    @Override
    public void destroyItem(ViewGroup container, int position, Object object) {
        container.removeView((LinearLayout) object);
    }
}
SamplePagerAdapter pagerAdapter = new SamplePagerAdapter(MainActivity.this, Arr_Result_List);
viewPager.setAdapter(pagerAdapter);
indicator.setViewPager(viewPager);