CardSlidePanel卡片左右划效果

本文介绍如何创建一个CardSlidePanel组件,实现卡片在屏幕间平滑地左右滑动效果。通过触控操作,用户可以轻松浏览和交互不同内容卡片,提升用户体验。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:card="http://schemas.android.com/apk/res-auto"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@mipmap/bg_colorful">

 <com.stone.card.library.CardSlidePanel
        android:id="@+id/image_slide_panel"
        android:layout_height="600dp"
        android:layout_width="match_parent"
        android:layout_gravity="center"
        card:yOffsetStep="13dp"
        card:itemMarginTop="40dp"
        card:bottomMarginTop="38dp">
    </com.stone.card.library.CardSlidePanel>

    <Button android:id="@+id/btn_next"
        android:background="@drawable/radius_btn_shape"
        android:layout_height="30dp"
        android:layout_width="wrap_content"
        android:layout_gravity="center_horizontal"
        android:textColor="#ffffff"
        android:layout_marginTop="70dp"
        android:textSize="12dp"
        android:text="换一批"/>
</LinearLayout>


card_item.xml

<?xml version="1.0" encoding="UTF-8"?>
<LinearLayout
    android:id="@+id/card_item_content"
    tools:context=".view.MainActivity"
    android:paddingRight="5dp"
    android:paddingLeft="5dp"
    android:orientation="vertical"
    android:layout_height="wrap_content"
    android:layout_width="match_parent"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:android="http://schemas.android.com/apk/res/android">

    <RelativeLayout
        android:id="@+id/card_top_layout"
        android:layout_height="450dp"
        android:layout_width="match_parent"
        android:background="@drawable/top">

        <ImageView
            android:id="@+id/card_image_view"
            android:layout_height="match_parent"
            android:layout_width="match_parent"
            android:scaleType="fitXY"/>

        <View
            android:id="@+id/maskView"
            android:layout_height="match_parent"
            android:layout_width="match_parent"
            android:background="?android:attr/selectableItemBackground"
            android:clickable="true"/>

        <TextView
            android:id="@+id/card_pic_num"
            android:paddingRight="4dp"
            android:paddingLeft="6dp"
            android:layout_height="20dp"
            android:layout_width="wrap_content"
            android:background="#5f000000"
            android:textColor="#fff"
            android:text="6"
            android:gravity="center"
            android:drawablePadding="4dp"
            android:drawableLeft="@drawable/card_photot"
            android:layout_margin="5dp"/>
    </RelativeLayout>
    <RelativeLayout
        android:id="@+id/card_bottom_layout"
        android:layout_height="wrap_content"
        android:layout_width="wrap_content"
        android:background="@drawable/bottom"
        android:paddingTop="10dp">
        <TextView
            android:id="@+id/card_user_name"
            android:layout_height="wrap_content"
            android:layout_width="wrap_content"
            android:text="叶琪琪 23"
            android:textSize="13sp"
            android:layout_marginLeft="10dp"/>
        <LinearLayout
            android:orientation="horizontal"
            android:layout_height="wrap_content"
            android:layout_width="wrap_content"
            android:layout_marginTop="3dp"
            android:layout_alignParentRight="true">

            <TextView
                android:layout_height="wrap_content"
                android:layout_width="wrap_content"
                android:textColor="#999"
                android:text="0"
                android:gravity="center_horizontal"
                android:drawablePadding="2dp"
                android:drawableLeft="@drawable/card_left1"
                android:textSize="15sp"/>
            <TextView
                android:id="@+id/card_like"
                android:layout_height="wrap_content"
                android:layout_width="wrap_content"
                android:textColor="#999"
                android:text="2"
                android:gravity="center_horizontal"
                android:drawablePadding="2dp"
                android:drawableLeft="@drawable/card_left2"
                android:textSize="15sp"
                android:layout_marginLeft="5dp"
                android:layout_marginRight="10dp"/>
        </LinearLayout>
    </RelativeLayout>
</LinearLayout>


drawable下的radius_btn_shape.xml

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <solid android:color="#569d02"/>
    <corners android:radius="5dip"/>
    <stroke android:color="#71962d" android:width="1dip"/>
</shape>


Found.java

import android.graphics.Rect;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;

import com.bumptech.glide.Glide;
import com.bwei.lithography.R;
import com.bwei.lithography.bean.My_ListBean;
import com.bwei.lithography.presenter.VidoPresenter;
import com.bwei.lithography.view.IViewCard;
import com.stone.card.library.CardAdapter;
import com.stone.card.library.CardSlidePanel;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Random;

import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.OnClick;
import butterknife.Unbinder;


/**
 * Created by HQ on 2017/12/29.
 */

public class Found extends Fragment implements IViewCard {
    private CardSlidePanel.CardSwitchListener cardSwitchListener;
    private CardAdapter cardAdapter;
    List<My_ListBean> dataList = new ArrayList<>();
    private VidoPresenter presenter;
    Unbinder unbinder;
    @BindView(R.id.image_slide_panel)
    CardSlidePanel slidePanel;
    private View view;

    @Nullable
    @Override
    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
        view = inflater.inflate(R.layout.fragment3, container, false);
        unbinder = ButterKnife.bind(this, view);
        return view;

    }
    @Override
    public void onActivityCreated(@Nullable Bundle savedInstanceState) {
        super.onActivityCreated(savedInstanceState);

        // 1. 左右滑动监听
        cardSwitchListener = new CardSlidePanel.CardSwitchListener() {

            @Override
            public void onShow(int index) {
                //Log.d("Card", "正在显示-" + dataList.get(index).userName);
            }

            @Override
            public void onCardVanish(int index, int type) {
                //Log.d("Card", "正在消失-" + dataList.get(index).userName + " 消失type=" + type);
            }
        };
        slidePanel.setCardSwitchListener(cardSwitchListener);

        //适配器
        cardAdapter = new CardAdapter() {
            @Override
            public int getLayoutId() {
                // layout文件
                return R.layout.card_item;
            }

            @Override
            public int getCount() {
                // 卡片个数
                return dataList.size();
            }

            @Override
            public Rect obtainDraggableArea(View view) {
                // 可滑动区域定制,仅调用一次
                // 可滑动区域定制,该函数只会调用一次
                View contentView = view.findViewById(R.id.card_item_content);
                View topLayout = view.findViewById(R.id.card_top_layout);
                View bottomLayout = view.findViewById(R.id.card_bottom_layout);
                int left = view.getLeft() + contentView.getPaddingLeft() + topLayout.getPaddingLeft();
                int right = view.getRight() - contentView.getPaddingRight() - topLayout.getPaddingRight();
                int top = view.getTop() + contentView.getPaddingTop() + topLayout.getPaddingTop();
                int bottom = view.getBottom() - contentView.getPaddingBottom() - bottomLayout.getPaddingBottom();
                return new Rect(left, top, right, bottom);
            }

            @Override
            public void bindView(View view, int index) {
                // 数据绑定,参看demo
                Object tag = view.getTag();
                ViewHolder viewHolder;
                if (null != tag) {
                    viewHolder = (ViewHolder) tag;
                } else {
                    viewHolder = new ViewHolder(view);
                    view.setTag(viewHolder);
                }

                viewHolder.bindData(dataList.get(index));
            }

            @Override
            public Object getItem(int index) {
                return dataList.get(index);
            }

            class ViewHolder {

                ImageView imageView;
                View maskView;
                TextView userNameTv;
                TextView imageNumTv;
                TextView likeNumTv;

                public ViewHolder(View view) {
                    imageView = (ImageView) view.findViewById(R.id.card_image_view);
                    maskView = view.findViewById(R.id.maskView);
                    userNameTv = (TextView) view.findViewById(R.id.card_user_name);
                    imageNumTv = (TextView) view.findViewById(R.id.card_pic_num);
                    likeNumTv = (TextView) view.findViewById(R.id.card_like);
                }

                public void bindData(My_ListBean itemData) {
                    Glide.with(getActivity()).load(itemData.getPic()).into(imageView);
                    userNameTv.setText(itemData.getTitle());
                    /*imageNumTv.setText(itemData.imageNum + "");
                    likeNumTv.setText(itemData.likeNum + "");*/
                }
            }
        };
        slidePanel.setAdapter(cardAdapter);

        presenter = new VidoPresenter(this);
        Map<String, String> map = new HashMap<>();
        map.put("catalogId", "402834815584e463015584e539330016");
        int randomNumber = getRandomNumber(1, 108);
        map.put("pnum", randomNumber + "");
        presenter.getData(map);

    }


    //换一批点击事件
    @OnClick(R.id.btn_next)
    public void onViewClicked() {

        dataList.clear();

        Map<String, String> map = new HashMap<>();
        map.put("catalogId", "402834815584e463015584e539330016");
        int randomNumber = getRandomNumber(1, 108);
        map.put("pnum", randomNumber + "");
        //Log.e(TAG, "数字: " + randomNumber);
        presenter.getData(map);
    }
    //随机数
    public int getRandomNumber(int min, int max) {
        return new Random().nextInt(max) % (max - min + 1) + min;
    }

    @Override
    public void onDestroyView() {
        super.onDestroyView();
        if (presenter != null) {
            presenter.detachView();
        }
        unbinder.unbind();
    }

    @Override
    public void onSuccess(Object o) {
        if (o != null) {
            if (o instanceof List) {
                List<My_ListBean> list = (List<My_ListBean>) o;
                //Toast.makeText(getActivity(), "请求成功", Toast.LENGTH_SHORT).show();
                //Log.e(TAG, "Onsuccess: " + list.toString());
                dataList.addAll(list);
            }
        }

        cardAdapter.notifyDataSetChanged();
    }

    @Override
    public void onFailed(Exception e) {
        Toast.makeText(getActivity(), e.getMessage(), Toast.LENGTH_SHORT).show();
    }
}



bean包

My_ListBean

public class My_ListBean {

    /**
     * airTime : 2017
     * angleIcon :
     * dataId : CMCC_00000000000000001_626996536
     * description : 《变形金刚5》新片段热破现身
     * duration : 00:01:19
     * loadURL : http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_626996536
     * loadtype : video
     * pic : http://phonemovie.ks3-cn-beijing.ksyun.com/image/2017/05/09/1494321106287069775.jpg
     * roomId :
     * score : 0
     * shareURL : http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_626996536
     * title : 《变形金刚5》新片段热破现身
     */

    private int airTime;
    private String angleIcon;
    private String dataId;
    private String description;
    private String duration;
    private String loadURL;
    private String loadtype;
    private String pic;
    private String roomId;
    private int score;
    private String shareURL;
    private String title;

    public int getAirTime() {
        return airTime;
    }

    public void setAirTime(int airTime) {
        this.airTime = airTime;
    }

    public String getAngleIcon() {
        return angleIcon;
    }

    public void setAngleIcon(String angleIcon) {
        this.angleIcon = angleIcon;
    }

    public String getDataId() {
        return dataId;
    }

    public void setDataId(String dataId) {
        this.dataId = dataId;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public String getDuration() {
        return duration;
    }

    public void setDuration(String duration) {
        this.duration = duration;
    }

    public String getLoadURL() {
        return loadURL;
    }

    public void setLoadURL(String loadURL) {
        this.loadURL = loadURL;
    }

    public String getLoadtype() {
        return loadtype;
    }

    public void setLoadtype(String loadtype) {
        this.loadtype = loadtype;
    }

    public String getPic() {
        return pic;
    }

    public void setPic(String pic) {
        this.pic = pic;
    }

    public String getRoomId() {
        return roomId;
    }

    public void setRoomId(String roomId) {
        this.roomId = roomId;
    }

    public int getScore() {
        return score;
    }

    public void setScore(int score) {
        this.score = score;
    }

    public String getShareURL() {
        return shareURL;
    }

    public void setShareURL(String shareURL) {
        this.shareURL = shareURL;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }


    @Override
    public String toString() {
        return "My_ListBean{" +
                "airTime=" + airTime +
                ", angleIcon='" + angleIcon + '\'' +
                ", dataId='" + dataId + '\'' +
                ", description='" + description + '\'' +
                ", duration='" + duration + '\'' +
                ", loadURL='" + loadURL + '\'' +
                ", loadtype='" + loadtype + '\'' +
                ", pic='" + pic + '\'' +
                ", roomId='" + roomId + '\'' +
                ", score=" + score +
                ", shareURL='" + shareURL + '\'' +
                ", title='" + title + '\'' +
                '}';
    }
}


My_RetBean

import java.util.List;

public class My_RetBean<T>{

    /**
     * adv : {"dataId":"","htmlURL":"","imgURL":"","shareURL":"","title":""}
     * bannerList : []
     * list : [{"airTime":2017,"angleIcon":"","dataId":"CMCC_00000000000000001_626996536","description":"《变形金刚5》新片段\u201c热破\u201d现身","duration":"00:01:19","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_626996536","loadtype":"video","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2017/05/09/1494321106287069775.jpg","roomId":"","score":0,"shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_626996536","title":"《变形金刚5》新片段\u201c热破\u201d现身"},{"airTime":2017,"angleIcon":"","dataId":"CMCC_00000000000000001_626996401","description":"动画片《白马王子》首曝预告","duration":"00:02:20","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_626996401","loadtype":"video","pic":"http://123.59.57.86:8080/icms_trans/img/626996401_699022_HSJ1080V.jpg","roomId":"","score":0,"shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_626996401","title":"动画片《白马王子》首曝预告"},{"airTime":2017,"angleIcon":"","dataId":"CMCC_00000000000000001_626996311","description":"\u201c银翼杀手2049\u201d发布正式版预告片","duration":"00:02:21","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_626996311","loadtype":"video","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2017/05/09/1494321682912071510.jpg","roomId":"","score":0,"shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_626996311","title":"《银翼杀手2049》发布正式版预告片"},{"airTime":2017,"angleIcon":"","dataId":"CMCC_00000000000000001_626970143","description":"《重返·狼群》海报预告双发定档6.16真实版\u201c与狼共舞\u201d将登大银幕","duration":"00:01:19","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_626970143","loadtype":"video","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2017/05/09/1494295733637090218.jpg","roomId":"","score":0,"shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_626970143","title":"《重返·狼群》海报预告双发"},{"airTime":2017,"angleIcon":"","dataId":"CMCC_00000000000000001_626968788","description":"《绣春刀·修罗战场》曝首支幕后特辑 连群演用的兵器都是单独设计","duration":"00:04:43","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_626968788","loadtype":"video","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2017/05/09/1494295644300076117.jpg","roomId":"","score":0,"shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_626968788","title":"《绣春刀·修罗战场》曝首支幕后特辑"},{"airTime":2017,"angleIcon":"","dataId":"CMCC_00000000000000001_626975480","description":"《提着心吊着胆》曝光新宣传曲《心恋》,任素汐自《我要你》后,再献唱推广曲。","duration":"00:02:52","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_626975480","loadtype":"video","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2017/05/09/1494295556557057348.jpg","roomId":"","score":0,"shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_626975480","title":"《提着心吊着胆》任素汐献唱宣传曲"},{"airTime":2017,"angleIcon":"","dataId":"CMCC_00000000000000001_626966998","description":"蔡康永、小S在终结了《康熙来了》之后,推出了蔡康永首部导演作品《\u201c吃吃\u201d的爱》,最新预告片发布。","duration":"00:01:30","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_626966998","loadtype":"video","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2017/05/09/1494295349134056229.jpg","roomId":"","score":0,"shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_626966998","title":"\u201c吃吃\u201d的爱》最新预告"},{"airTime":2017,"angleIcon":"","dataId":"CMCC_00000000000000001_626966947","description":"冯小刚新作《芳华》曝\u201c青春\u201d版预告片,黄轩携\u201c冯女郎\u201d苗苗、钟楚曦亮相,青春活力中流露出当下少有的纯真与自然美。","duration":"00:02:11","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_626966947","loadtype":"video","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2017/05/09/1494295229293029864.jpg","roomId":"","score":0,"shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_626966947","title":"《芳华》青春预告"},{"airTime":2017,"angleIcon":"","dataId":"CMCC_00000000000000001_626970751","description":"画质感人!3D版《终结者2》首曝预告还是熟悉的配方熟悉的味道 定档825","duration":"00:01:35","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_626970751","loadtype":"video","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2017/05/09/1494295087205084976.jpg","roomId":"","score":0,"shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_626970751","title":"《终结者23D版首曝预告"},{"airTime":2017,"angleIcon":"","dataId":"CMCC_00000000000000001_626970766","description":"科幻动作巨制《超凡战队》(原《恐龙战队》)距离512日上映还有四天,今日曝光\u201c目标锁定\u201d版预告,五兽机甲集中火力对决丽达女王,捍卫地球大战即将引爆。同时发布的还有手绘版海报,兼具了复古与现代的两面性,完美致敬《恐龙战队》又不失《超凡战队》独有的现代帅气机甲。目前电影《超凡战队》已开启全国预售。","duration":"00:00:30","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_626970766","loadtype":"video","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2017/05/09/1494294957907001247.jpg","roomId":"","score":0,"shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_626970766","title":"《超凡战队》预告海报双发 麦克佐德开启"摇滚"战斗"},{"airTime":2017,"angleIcon":"","dataId":"CMCC_00000000000000001_626970731","description":"由黎明首次执导,黄建新监制,张涵予、杜鹃、黎明、王耀庆领衔主演的夺宝枪战电影《抢红》519日上映在即,今日片方重磅发布终极预告和终极海报,宣告一场横跨中、法两国,有关脑力抗衡和激烈枪战的古堡夺宝大战马上开打!","duration":"00:01:26","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_626970731","loadtype":"video","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2017/05/09/1494294864283028943.jpg","roomId":"","score":0,"shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_626970731","title":"《抢红》终极预告海报齐发 张涵予黎明兄弟反目成仇"},{"airTime":2017,"angleIcon":"","dataId":"CMCC_00000000000000001_626979662","description":"《绣春刀·修罗战场》曝特辑 金马班底品质再升级","duration":"00:04:40","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_626979662","loadtype":"video","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2017/05/09/1494294688661070671.jpg","roomId":"","score":0,"shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_626979662","title":"《绣春刀·修罗战场》曝特辑 金马班底再升级"},{"airTime":2017,"angleIcon":"","dataId":"CMCC_00000000000000001_626975304","description":"\u201c方木宣言\u201d视频中,天赋奇才的方木用心理入侵在破案过程中起到了关键性作用。","duration":"00:00:44","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_626975304","loadtype":"video","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2017/05/09/1494294487135090225.jpg","roomId":"","score":0,"shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_626975304","title":"《心理罪》曝\u201c方木宣言\u201d"},{"airTime":2017,"angleIcon":"","dataId":"CMCC_00000000000000001_623346348","description":"预告以清冷的色调勾勒出外太空的恐怖氛围,视频一开场就奠定了影片血腥的基调。","duration":"00:01:55","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_623346348","loadtype":"video","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2017/05/08/1494232529308006750.jpg","roomId":"","score":0,"shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_623346348","title":"《异形:契约》首曝中文预告"},{"airTime":2017,"angleIcon":"","dataId":"CMCC_00000000000000001_623356036","description":"预告以清冷的色调勾勒出外太空的恐怖氛围,视频一开场就奠定了影片血腥的基调。抱脸虫、破肚虫悉数登场,而新异形则在最后露出了巨大杀伤力。","duration":"00:02:03","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_623356036","loadtype":"video","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2017/05/08/1494232487320046760.jpg","roomId":"","score":0,"shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_623356036","title":"《异形:契约》首曝预告"},{"airTime":2017,"angleIcon":"","dataId":"CMCC_00000000000000001_623371171","description":"异形回归!科幻系列巨制《异形:契约》首款预告炸裂,抱脸虫和异形触手曝光!导演雷德利斯科特表示本片会让粉丝看到经典的异形形象!","duration":"00:02:00","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_623371171","loadtype":"video","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2017/05/08/1494232383741077677.jpg","roomId":"","score":0,"shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_623371171","title":"《异形:契约》震撼预告片"},{"airTime":2017,"angleIcon":"","dataId":"CMCC_00000000000000001_625594611","description":"异形契约3款宣传片气氛绝望 肖博士生死未卜","duration":"00:00:24","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_625594611","loadtype":"video","pic":"http://123.59.57.86:8080/icms_trans/img/625594611_699022_HSJ1080V.jpg","roomId":"","score":0,"shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_625594611","title":"异形契约3款宣传片气氛绝望 肖博士生死未卜"},{"airTime":2017,"angleIcon":"","dataId":"CMCC_00000000000000001_626937520","description":"彭万里身为公司总裁,却想着不择手段挖空对手公司1000万,而暗恋他的李燕却成为了这场商业阴谋的被害人,与此同时,开着一家半年没有装修好的皮包公司的白宏图闯入了彭万里的视野,正当彭万里想着如何利用包宏图顶缸时,三人被意外送到了远离都市的彩虹镇。 彩虹镇遵守着古老而神秘的规则繁衍不惜,万物都被以快乐为能量的彩虹机控制着,期初,三人为了逃出彩虹镇想尽一切办法,阴错阳差,三人最终都爱上了这个地方,与此同时,一场保卫彩虹机的斗争倏然而至\u2026\u2026","duration":"00:01:01","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_626937520","loadtype":"video","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2017/05/08/1494213838792025465.jpg","roomId":"","score":0,"shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_626937520","title":"《黑白照相馆》先导预告片"},{"airTime":2017,"angleIcon":"","dataId":"CMCC_00000000000000001_626947291","description":"画质感人!3D版《终结者2》首曝预告","duration":"00:01:35","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_626947291","loadtype":"video","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2017/05/08/1494213433783025229.jpg","roomId":"","score":0,"shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_626947291","title":"《终结者23D版本首曝预告"},{"airTime":2017,"angleIcon":"","dataId":"CMCC_00000000000000001_626958343","description":"《异星觉醒》曝三大主演采访花絮 \u201c死侍\u201d不改萌贱本色","duration":"00:01:39","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_626958343","loadtype":"video","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2017/05/08/1494213211589002869.jpg","roomId":"","score":0,"shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_626958343","title":"《异星觉醒》曝三大主演采访花絮 \u201c死侍\u201d不改萌贱本色"},{"airTime":2017,"angleIcon":"","dataId":"CMCC_00000000000000001_626958550","description":"诺兰《敦刻尔克》中文新预告 水中战船燃烧场面震撼","duration":"00:02:25","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_626958550","loadtype":"video","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2017/05/08/1494212996714061831.jpg","roomId":"","score":0,"shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_626958550","title":"《敦刻尔克》中文新预告 水中战船燃烧场面震撼"},{"airTime":2017,"angleIcon":"","dataId":"CMCC_00000000000000001_626958383","description":"《重返·狼群》曝光预告 定档6.16 真实版\u201c与狼共舞\u201d","duration":"00:01:19","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_626958383","loadtype":"video","pic":"http://123.59.57.86:8080/icms_trans/img/626958383_699022_HSJ1080V.jpg","roomId":"","score":0,"shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_626958383","title":"《重返·狼群》曝光预告 定档6.16 真实版\u201c与狼共舞\u201d"},{"airTime":2017,"angleIcon":"","dataId":"CMCC_00000000000000001_626958369","description":"《神奇女侠》首曝巷战片段 女神单臂挡子弹看傻男友","duration":"00:00:45","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_626958369","loadtype":"video","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2017/05/08/1494212747583005941.jpg","roomId":"","score":0,"shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_626958369","title":"《神奇女侠》首曝巷战片段 女神单臂挡子弹看傻男友"},{"airTime":2017,"angleIcon":"","dataId":"CMCC_00000000000000001_626943789","description":"电影《异形:契约》中月球登陆器明年将飞赴太空","duration":"00:01:05","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_626943789","loadtype":"video","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2017/05/08/1494232442407042987.jpg","roomId":"","score":0,"shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_626943789","title":"电影《异形:契约》中月球登陆器明年将飞赴太空"},{"airTime":2017,"angleIcon":"","dataId":"CMCC_00000000000000001_626958677","description":"《悟空传》新预告彭于晏\u201d劈天灭神\u201c巨型金箍棒直插云霄","duration":"00:01:05","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_626958677","loadtype":"video","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2017/05/08/1494208024349085408.jpg","roomId":"","score":0,"shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_626958677","title":"《悟空传》新预告"},{"airTime":2017,"angleIcon":"","dataId":"CMCC_00000000000000001_626891575","description":"《毒。诫》曝兄弟情预告","duration":"00:01:10","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_626891575","loadtype":"video","pic":"http://123.59.57.86:8080/icms_trans/img/626891575_699022_HSJ1080V.jpg","roomId":"","score":0,"shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_626891575","title":"《毒。诫》曝兄弟情预告"},{"airTime":2017,"angleIcon":"","dataId":"CMCC_00000000000000001_626892217","description":"小罗伯特·唐尼出镜介绍《复联3》片场","duration":"00:00:51","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_626892217","loadtype":"video","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2017/05/05/1493965073848082514.jpg","roomId":"","score":0,"shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_626892217","title":"《复联3》小罗伯特·唐尼出镜介绍片场"},{"airTime":2017,"angleIcon":"","dataId":"CMCC_00000000000000001_626892155","description":"冯小刚执导新作《芳华》首款预告","duration":"00:02:17","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_626892155","loadtype":"video","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2017/05/05/1493964975923066217.jpg","roomId":"","score":0,"shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_626892155","title":"《芳华》首款预告"},{"airTime":2017,"angleIcon":"","dataId":"CMCC_00000000000000001_626891395","description":"《美容针》曝\u201c爱情通关\u201d制作特辑","duration":"00:02:49","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_626891395","loadtype":"video","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2017/05/05/1493964883950059312.jpg","roomId":"","score":0,"shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_626891395","title":"《美容针》曝\u201c爱情通关\u201d制作特辑"},{"airTime":2017,"angleIcon":"","dataId":"CMCC_00000000000000001_626871127","description":"《银河护卫队2》中文花絮特辑曝光","duration":"00:01:30","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_626871127","loadtype":"video","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2017/05/04/1493863978998085592.jpg","roomId":"","score":0,"shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_626871127","title":"《银河护卫队2》中文花絮特辑曝光"}]
     * pnum : 10
     * records : 30
     * totalPnum : 108
     * totalRecords : 30
     */

    private AdvBean adv;
    private int pnum;
    private int records;
    private int totalPnum;
    private int totalRecords;
    private List<?> bannerList;
    private T list;

    public AdvBean getAdv() {
        return adv;
    }

    public void setAdv(AdvBean adv) {
        this.adv = adv;
    }

    public int getPnum() {
        return pnum;
    }

    public void setPnum(int pnum) {
        this.pnum = pnum;
    }

    public int getRecords() {
        return records;
    }

    public void setRecords(int records) {
        this.records = records;
    }

    public int getTotalPnum() {
        return totalPnum;
    }

    public void setTotalPnum(int totalPnum) {
        this.totalPnum = totalPnum;
    }

    public int getTotalRecords() {
        return totalRecords;
    }

    public void setTotalRecords(int totalRecords) {
        this.totalRecords = totalRecords;
    }

    public List<?> getBannerList() {
        return bannerList;
    }

    public void setBannerList(List<?> bannerList) {
        this.bannerList = bannerList;
    }

    public T getList() {
        return list;
    }

    public void setList(T list) {
        this.list = list;
    }

    public static class AdvBean {
        /**
         * dataId :
         * htmlURL :
         * imgURL :
         * shareURL :
         * title :
         */

        private String dataId;
        private String htmlURL;
        private String imgURL;
        private String shareURL;
        private String title;

        public String getDataId() {
            return dataId;
        }

        public void setDataId(String dataId) {
            this.dataId = dataId;
        }

        public String getHtmlURL() {
            return htmlURL;
        }

        public void setHtmlURL(String htmlURL) {
            this.htmlURL = htmlURL;
        }

        public String getImgURL() {
            return imgURL;
        }

        public void setImgURL(String imgURL) {
            this.imgURL = imgURL;
        }

        public String getShareURL() {
            return shareURL;
        }

        public void setShareURL(String shareURL) {
            this.shareURL = shareURL;
        }

        public String getTitle() {
            return title;
        }

        public void setTitle(String title) {
            this.title = title;
        }
    }

}

 My_VideoBean

public class My_VideoBean<T>{

    /**
     * msg : 成功
     * ret : {"adv":{"imgURL":"","dataId":"","htmlURL":"","shareURL":"","title":""},"pnum":20,"totalRecords":30,"bannerList":[],"records":30,"list":[{"airTime":0,"duration":"00:02:14","loadtype":"video","score":0,"angleIcon":"","dataId":"CMCC_00000000000000001_622977044","description":"《银河护卫队2》预告片引爆全球热反响!树精宝宝格鲁特战斗力惊人,与火箭浣熊斗智斗贫的片段简直萌翻,让影片的期待值飙升。","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_622977044","shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_622977044","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2016/12/26/1482745644464002312.jpg","title":"《银河护卫队2》大热预告","roomId":""},{"airTime":2016,"duration":"00:02:48","loadtype":"video","score":0,"angleIcon":"","dataId":"c38c2bc84261425b9a1fa5be40c991f4","description":"@TV新片速递:由飞虎队合体演唱的主题曲《弹起我心爱的土琵琶》,MV中,黄子韬起头演唱\u201c西边的太阳就要落山了\u201d总是找不到调,被成龙嫌弃道:\u201c他在片场天天唱,烦死了。\u201d","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=c38c2bc84261425b9a1fa5be40c991f4","shareURL":"http://m.svipmovie.com/#/moviedetails/c38c2bc84261425b9a1fa5be40c991f4","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2016/12/10/1481339960058068889.jpg","title":"《铁道飞虎》主题曲","roomId":""},{"airTime":0,"duration":"00:02:00","loadtype":"video","score":0,"angleIcon":"","dataId":"CMCC_00000000000000001_622865367","description":"加菲\u201c肉戏\u201d喋血柔情、用信念支撑着道斯在战场炼狱中赤手空拳创造奇迹。","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_622865367","shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_622865367","pic":"http://yweb2.cnliveimg.com/img/CMCC_MOVIE/622865367_699022_HSJ1080V.jpg","title":"《血战钢锯岭》曝孤胆傲志预告","roomId":""},{"airTime":0,"duration":"00:00:52","loadtype":"video","score":0,"angleIcon":"","dataId":"81fd080cd2ab43288229873ab121a690","description":"@TV新片速递:《铁道飞虎》是由丁晟执导,成龙、黄子韬、王凯、王大陆等主演的动作、战争题材喜剧电影。","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=81fd080cd2ab43288229873ab121a690","shareURL":"http://m.svipmovie.com/#/moviedetails/81fd080cd2ab43288229873ab121a690","pic":"http://y2.cnliveimg.com:8080/image/itv/2016/1207/81fd080cd2ab43288229873ab121a690_168028_101.jpg","title":"铁道飞虎定档预告片","roomId":""},{"airTime":0,"duration":"00:01:14","loadtype":"video","score":0,"angleIcon":"","dataId":"CMCC_00000000000000001_622921902","description":"犯罪题材喜剧电影《冒牌卧底》曝光喜剧版预告片,潘粤明、吴樾、高圣远、常远、林鹏、谭凯、金士杰爆笑组合来袭。","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_622921902","shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_622921902","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2016/12/06/1481013508910030839.jpg","title":"潘粤明《冒牌卧底》预告片","roomId":""},{"airTime":0,"duration":"00:01:45","loadtype":"video","score":0,"angleIcon":"","dataId":"CMCC_00000000000000001_622673564","description":"咸鱼式的小人物罗恒,跨越千年,历经15种身份,遭遇痛苦、诋毁、惊悚、欺骗、背叛以及温暖和爱,七样不同类型的人生滋味,只为追求梦想的故事。","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_622673564","shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_622673564","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2016/12/06/1481013382701059107.jpg","title":"《咸鱼传奇》曝光预告","roomId":""},{"airTime":0,"duration":"00:02:05","loadtype":"video","score":0,"angleIcon":"","dataId":"CMCC_00000000000000001_622695755","description":"《那年夏天你去了哪里》剧情版预告片,胡歌演反派照样酷炫","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_622695755","shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_622695755","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2016/12/06/1481013108214074284.jpg","title":"《那年夏天你去了哪里》剧情版预告片,胡歌演反派照样酷炫","roomId":""},{"airTime":0,"duration":"00:02:03","loadtype":"video","score":0,"angleIcon":"","dataId":"CMCC_00000000000000001_622900943","description":"由王家卫监制、张嘉佳执导的贺岁爱情喜剧《摆渡人》最新曝光\u201c陪你渡过\u201d版预告,金牌摆渡人感同身受解决各类难题,几大角色面临虐心爱情困境,在这样的悲欢离合中,《摆渡人》誓要冲破一切阻碍,带你改变这个世界。","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_622900943","shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_622900943","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2016/12/06/1481012852688011978.jpg","title":"《摆渡人》剧场版预告","roomId":""},{"airTime":0,"duration":"00:02:00","loadtype":"video","score":0,"angleIcon":"","dataId":"CMCC_00000000000000001_622694758","description":"动画翻拍科幻大片《攻壳机动队》公布正式预告,性感女神斯嘉丽约翰逊再度演绎科技人,无敌高能炫酷炸裂。","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_622694758","shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_622694758","pic":"http://yweb2.cnliveimg.com/img/CMCC_MOVIE/622694758_699022_HSJ1080V.jpg","title":"斯嘉丽约翰逊《攻壳机动队》","roomId":""},{"airTime":0,"duration":"00:01:52","loadtype":"video","score":0,"angleIcon":"","dataId":"CMCC_00000000000000001_622702078","description":"主题依旧是世界的毁坏和损失,因为在第五部结尾处,整个世界只剩下最后一个白宫角落可供人类抵抗红心女王。为了给整部系列一个完整饱满的结局,前几部中的人物和主题都将回归画成完整一个圈,大结局将会循环回到第一部中的人物和主题,将整部系列六部影片串联起来。这就是为什么红心女王和米歇尔-罗德里格兹的角色回归到《生化危机5》,一切都是为回到蜂房,回到第一部做准备。","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_622702078","shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_622702078","pic":"http://yweb0.cnliveimg.com/img/CMCC_MOVIE/622702078_699022_HSJ1080V.jpg","title":"《生化危机6:终章》国际先行版预告","roomId":""},{"airTime":2017,"duration":"00:02:45","loadtype":"video","score":0,"angleIcon":"","dataId":"CMCC_00000000000000001_620800211","description":"《正义联盟》 SDCC预告片","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_620800211","shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_620800211","pic":"http://yweb0.cnliveimg.com/img/CMCC_MOVIE/620800211_699022_HSJ1080V.jpg","title":"《正义联盟》 SDCC预告片","roomId":""},{"airTime":2017,"duration":"00:00:24","loadtype":"video","score":0,"angleIcon":"","dataId":"CMCC_00000000000000001_619718070","description":"《雷神3\u201c锤哥\u201d分享片场视频","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_619718070","shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_619718070","pic":"http://yweb3.cnliveimg.com/img/CMCC_MOVIE/619718070_699022_HSJ1080V.jpg","title":"《雷神3\u201c锤哥\u201d分享片场视频","roomId":""},{"airTime":2017,"duration":"00:00:58","loadtype":"video","score":0,"angleIcon":"","dataId":"CMCC_00000000000000001_621181034","description":"克里斯托弗·诺兰自编自导的二战题材影片《敦刻尔克》今日曝光首款中文版先行预告,预告展现敦刻尔克战役中,英军士兵背对大海,即将遭遇空袭的险境。","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_621181034","shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_621181034","pic":"http://yweb2.cnliveimg.com/img/CMCC_MOVIE/621181034_699022_HSJ1080V.jpg","title":"诺兰新片《敦刻尔克》首曝中文预告","roomId":""},{"airTime":0,"duration":"00:00:46","loadtype":"video","score":0,"angleIcon":"","dataId":"CMCC_00000000000000001_622000282","description":"《猩球崛起3》曝预告前瞻凯撒亮声","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_622000282","shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_622000282","pic":"http://yweb1.cnliveimg.com/img/CMCC_MOVIE/622000282_699022_HSJ1080V.jpg","title":"《猩球崛起3》曝预告前瞻凯撒亮声","roomId":""},{"airTime":0,"duration":"00:02:24","loadtype":"video","score":0,"angleIcon":"","dataId":"CMCC_00000000000000001_622922888","description":"《变形金刚5》首款中文预告片来袭,擎天柱怒砍大黄蜂 \u201c穿越\u201d人类历史瞬间。","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_622922888","shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_622922888","pic":"http://yweb3.cnliveimg.com/img/CMCC_MOVIE/622922888_699022_HSJ1080V.jpg","title":"《变形金刚5》首款中文预告片来袭","roomId":""},{"airTime":0,"duration":"00:01:29","loadtype":"video","score":0,"angleIcon":"","dataId":"CMCC_00000000000000001_622455954","description":"电影《情圣》曝首款\u201c先贱\u201d版预告","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_622455954","shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_622455954","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2016/12/06/1481009461635090773.jpg","title":"电影《情圣》曝首款\u201c先贱\u201d版预告","roomId":""},{"airTime":0,"duration":"00:01:29","loadtype":"video","score":0,"angleIcon":"","dataId":"CMCC_00000000000000001_622435100","description":"《情圣》首款预告 肖央闫妮进军贺岁","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_622435100","shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_622435100","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2016/12/06/1481009724505049861.jpg","title":"《情圣》首款预告 肖央闫妮进军贺岁","roomId":""},{"airTime":0,"duration":"00:02:09","loadtype":"video","score":0,"angleIcon":"","dataId":"CMCC_00000000000000001_622917664","description":"格鲁特也展现了熊孩子的一面,打架耍狠不含糊,分分钟撂倒敌人。另一个开启逗比属性的是毁灭者,虽然在预告片一开始他飞身扑向章鱼怪大张的血盆大口,展现英勇一面,却难掩双商捉急的短板。","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_622917664","shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_622917664","pic":"http://yweb1.cnliveimg.com/img/CMCC_MOVIE/622917664_699022_HSJ1080V.jpg","title":"《银河护卫队2》中文预告","roomId":""},{"airTime":2017,"duration":"00:02:43","loadtype":"video","score":0,"angleIcon":"","dataId":"CMCC_00000000000000001_620799874","description":"《亚瑟王:圣剑传奇》 SDCC版预告片","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_620799874","shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_620799874","pic":"http://yweb2.cnliveimg.com/img/CMCC_MOVIE/620799874_699022_HSJ1080V.jpg","title":"《亚瑟王:圣剑传奇》 SDCC版预告片","roomId":""},{"airTime":0,"duration":"00:02:30","loadtype":"video","score":0,"angleIcon":"","dataId":"CMCC_00000000000000001_622915792","description":"《速度与激情8》首曝先导预告特辑,回顾\u201c速激\u201d系列片花 预告镜头范迪塞尔和塞隆同框。","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_622915792","shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_622915792","pic":"http://yweb0.cnliveimg.com/img/CMCC_MOVIE/622915792_699022_HSJ1080V.jpg","title":"《速度与激情8》首曝先导预告特辑","roomId":""},{"airTime":0,"duration":"00:02:24","loadtype":"video","score":0,"angleIcon":"","dataId":"CMCC_00000000000000001_622695642","description":"《金刚:骷髅岛》预告 最大金刚手撕飞机","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_622695642","shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_622695642","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2016/12/14/1481706336409097195.jpg","title":"《金刚:骷髅岛》预告 最大金刚手撕飞机","roomId":""},{"airTime":0,"duration":"00:01:53","loadtype":"video","score":0,"angleIcon":"","dataId":"CMCC_00000000000000001_622866052","description":"成龙带领飞虎队成员王凯黄子韬\u201c干大事\u201d,震撼的火车相撞画面首曝光。","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_622866052","shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_622866052","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2016/12/06/1480996694240059557.jpg","title":"《铁道飞虎》成龙王凯热血开战","roomId":""},{"airTime":0,"duration":"00:04:35","loadtype":"video","score":0,"angleIcon":"","dataId":"CMCC_00000000000000001_622901186","description":"电影发布三支重磅视频,分别是马特·达蒙、佩德罗·帕斯卡、威廉·达福的个人角色特辑。马特·达蒙透露,在电影中他与帕斯卡彼此是最好的伙伴,在战斗中配合默契,而威廉·达福饰演的巴拉德则已经被困在长城25年,秘密谋划窃取关城最强大的武器。","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_622901186","shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_622901186","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2016/12/06/1480995565452023020.jpg","title":"《长城》发三巨星特辑","roomId":""},{"airTime":2017,"duration":"00:01:30","loadtype":"video","score":0,"angleIcon":"","dataId":"CMCC_00000000000000001_622830982","description":"该片主要讲述了小厨神与来自法国米其林三星名厨大斗法,两位厨师由最初的冤家,后来变成惺惺相惜的好朋友,还一起参加全球美食之王大赛,争夺冠军的故事。","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_622830982","shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_622830982","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2016/12/01/1480576669621013814.jpg","title":"《决战食神》首发预告","roomId":""},{"airTime":2017,"duration":"00:01:50","loadtype":"video","score":0,"angleIcon":"","dataId":"CMCC_00000000000000001_622704970","description":"唐三藏带与三徒踏上取西经之路,表面上一片和谐但其实却暗中互相对抗,面和心不和。经历一连串的捉妖事件之后,师徒开始互相体谅到对方的苦处和心结,终于把内部矛盾化解,同心合力成为无坚不摧的驱魔团队。","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_622704970","shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_622704970","pic":"http://yweb0.cnliveimg.com/img/CMCC_MOVIE/622704970_699022_HSJ1080V.jpg","title":"《西游伏妖篇》先行版预告片","roomId":""},{"airTime":0,"duration":"00:01:28","loadtype":"video","score":0,"angleIcon":"","dataId":"CMCC_00000000000000001_622774615","description":"七个互不认识的正常人莫名奇妙被关进了疯人院,这七个人想方设法证明自己不是疯子,为了逃出疯人院做出了一系列令人捧腹大笑的荒唐事,然而这一切都被疯人院里监控摄像记录下来\u2026\u2026","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_622774615","shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_622774615","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2016/12/01/1480574919796050954.jpg","title":"《你好疯子》快乐预告","roomId":""},{"airTime":2016,"duration":"00:02:22","loadtype":"video","score":0,"angleIcon":"","dataId":"CMCC_00000000000000001_622788658","description":"《凄灵室》张一山被催眠大飙演技","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_622788658","shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_622788658","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2016/11/28/1480315510606015533.jpg","title":"《凄灵室》张一山被催眠大飙演技","roomId":""},{"airTime":2016,"duration":"00:01:04","loadtype":"video","score":0,"angleIcon":"","dataId":"CMCC_00000000000000001_622604855","description":"郁郁不得志的赌场洗码仔梅大志因妻子安静和萍水相逢的蜜月夫妇郝东东和菓菓欠下了巨额赌债,又因为安静的姐姐安宁和她的学生仔,卷入了一块价值连城的宝物龙凤镜的生死争夺中。","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_622604855","shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_622604855","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2016/11/28/1480314071342003585.jpg","title":"《呆呆计划》迷局预告","roomId":""},{"airTime":0,"duration":"00:01:02","loadtype":"video","score":0,"angleIcon":"","dataId":"6b87cb52a77d4b66aa47742f12c53d8f","description":"@TV新片速递:由姜武监制,梁栋执导,姜武、蒋勤勤领衔主演、李乃文、傅颖主演的奇幻穿越电影《完美有多美》发布\u201c奇幻人生\u201d先导预告。","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=6b87cb52a77d4b66aa47742f12c53d8f","shareURL":"http://m.svipmovie.com/#/moviedetails/6b87cb52a77d4b66aa47742f12c53d8f","pic":"http://y1.cnliveimg.com:8080/image/itv/2016/1127/6b87cb52a77d4b66aa47742f12c53d8f_165267_101.jpg","title":"《完美有多美》预告片","roomId":""},{"airTime":2016,"duration":"00:01:25","loadtype":"video","score":0,"angleIcon":"","dataId":"CMCC_00000000000000001_622027514","description":"传说在世界的某个角落里,有一个叫\u201c超级幼儿园\u201d的神秘地方,据说园长是一个非常恐怖的老头子,不听话的孩子们都会被他抓进\u201c超级幼儿园\u201d\r\n  宋小聪十分调皮,喜欢恶作剧,让所有的幼师和保姆都感到很头疼。一天早上醒来后,小聪发现他和小伙伴们来到了这个陌生的地方\u2014\u2014超级幼儿园,小家伙们的爆笑冒险之旅就此拉开帷幕,在前面等待他们的将会是什么呢?","loadURL":"http://api.svipmovie.com/front/videoDetailApi/videoDetail.do?mediaId=CMCC_00000000000000001_622027514","shareURL":"http://m.svipmovie.com/#/moviedetails/CMCC_00000000000000001_622027514","pic":"http://phonemovie.ks3-cn-beijing.ksyun.com/image/2016/11/24/1479959691980095329.jpg","title":"《超级幼儿园》熊孩闹翻天","roomId":""}],"totalPnum":108}
     * code : 200
     */

    private String msg;
    private T ret;
    private String code;

    public String getMsg() {
        return msg;
    }

    public void setMsg(String msg) {
        this.msg = msg;
    }

    public T getRet() {
        return ret;
    }

    public void setRet(T ret) {
        this.ret = ret;
    }

    public String getCode() {
        return code;
    }

    public void setCode(String code) {
        this.code = code;
    }



}


http包

Apiervice

import com.bwei.lithography.bean.My_ListBean;
import com.bwei.lithography.bean.My_RetBean;
import com.bwei.lithography.bean.My_VideoBean;
import com.bwei.lithography.bean.ShouYeBean;

import java.util.List;
import java.util.Map;

import io.reactivex.Flowable;
import retrofit2.http.GET;
import retrofit2.http.QueryMap;

/**
 * Created by HQ on 2017/12/29.
 */

public interface ApiService {
    @GET("front/homePageApi/homePage.do")
    Flowable<ShouYeBean> getHeqi(@QueryMap Map<String, String> map);

    @GET("front/columns/getVideoList.do")
    Flowable<My_VideoBean<My_RetBean<List<My_ListBean>>>> getVideo(@QueryMap Map<String,String> map);
}


RetrofitUtils.java

import retrofit2.Retrofit;
import retrofit2.adapter.rxjava2.RxJava2CallAdapterFactory;
import retrofit2.converter.gson.GsonConverterFactory;

/**
 * Created by HQ on 2017/12/29.
 */

public class RetrofitUtils {

    private static volatile RetrofitUtils instance;

    private ApiService apiService;

    private RetrofitUtils() {
        Retrofit retrofit = new Retrofit.Builder()
                .addConverterFactory(GsonConverterFactory.create())
                .addCallAdapterFactory(RxJava2CallAdapterFactory.create())
                .baseUrl("http://api.svipmovie.com/")
                .build();
        apiService = retrofit.create(ApiService.class);
    }

    //单例模式
    public static RetrofitUtils getInstance() {
        if (instance == null) {
            synchronized (RetrofitUtils.class) {
                if (null == instance) {
                    instance = new RetrofitUtils();
                }
            }
        }
        return instance;
    }

    public ApiService getApiService() {
        return apiService;
    }

}

 
model包

public interface ModelPost {
    void getData(Map<String, String> map);
}


myview包

public class CardDataItem {
    String imagePath;
    String userName;
    int likeNum;
    int imageNum;

}


presenter包

VidoPresenter

import com.bwei.lithography.bean.My_ListBean;
import com.bwei.lithography.bean.My_RetBean;
import com.bwei.lithography.bean.My_VideoBean;
import com.bwei.lithography.model.Models;
import com.bwei.lithography.view.IViewCard;

import java.util.List;
import java.util.Map;

import io.reactivex.Flowable;
import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.schedulers.Schedulers;
import io.reactivex.subscribers.DisposableSubscriber;

/**
 * Created by Liu xiong biao on 2017/12/9.
 */

public class VidoPresenter implements PresenterPost {
    private IViewCard iview;
    private DisposableSubscriber<My_VideoBean<My_RetBean<List<My_ListBean>>>> subscriber;

    public VidoPresenter(IViewCard iview) {
        this.iview = iview;
    }
    public void detachView() {
        if (iview != null) {
            iview = null;
        }
    }
    @Override
    public void getData(Map<String, String> map) {
        Models model = new Models(this);
        model.getData(map);
    }

    public void get(Flowable<My_VideoBean<My_RetBean<List<My_ListBean>>>> flowable){
        subscriber = flowable.subscribeOn(Schedulers.io())
                .observeOn(AndroidSchedulers.mainThread())
                .subscribeWith(new DisposableSubscriber<My_VideoBean<My_RetBean<List<My_ListBean>>>>() {
                    @Override
                    public void onNext(My_VideoBean<My_RetBean<List<My_ListBean>>> retBeanVideoBean) {
                        List<My_ListBean> list = retBeanVideoBean.getRet().getList();
                        iview.onSuccess(list);
                    }

                    @Override
                    public void onError(Throwable t) {
                        iview.onFailed(new Exception(t));
                    }

                    @Override
                    public void onComplete() {

                    }
                });
    }
}

接口
public interface PresenterPost {
    void getData(Map<String, String> map);
}



view 包

public interface IViewCard {
    void onSuccess(Object o);
    void onFailed(Exception e);
}


可以改造为探探等卡片切换效果效果图如下效果简述上下左右均可移动随点击移动在上下左右一定的范围内移动后会返回原来的位置,不会切换只有大于一定范围才会产生切换,同时切换效果随移动方向不同,产生不同的切换效果代码解析wxmlwxml里有两个卡片,相互重叠卡片绑定touch的开始,移动和结束方法,获取点击的位置绑定动画,方便之后的动画操作js在touch的开始方法里,绑定点击的初始位置设置卡片绝对定位,在touch移动的方法里,绑定top和left值,实现随点击点移动而移动在点击的结束方法里获取最后的点击位置,和初始位置做对比,如果x,y移动的大小在一定的范围内,则恢复绝对定位的初始值如果大于x,y设定的范围则实现切换效果特效微信的js动画特效是根据css3封装而来,我当时尝试用css3实现,但结合一些动画出发要求等原因,使用微信的js东特特效还是相对方便绑定了z-index,基本实现两张卡片的相互切换模仿微信小程序文档写了动画的效果,注意的就是translate移动之后,一定要再移动回0,这样才能在之后回到卡片初始位置卡片绑定了透明度的变量,根据移动所占百分比,来显示底层的透明度movebox原本分1,2。目前已经合并为一个函数,其他1,2的控制动效控制函数可以适当合并后续这个源码,可以在卡片内插入任意内容,相互切换我自己使用的情况是去除了移动,直接切换,1、2卡片绑定的是同一个变量,由于不能移动,所以看不到下面的内容,一旦成功切换卡片,同时绑定的变量也会切换,达到了内容随卡片切换的效果如果不去除移动的话,就不能1、2卡片绑定同一个变量,因为移动上面卡片会看到下面的卡片解决方法1(个人思考,如果有更好的欢迎交流)绑定两个变量,切换卡片的同时,更新该卡片绑定的数据解决方法2(个人思考,如果有更好的欢迎交流)1、2卡片绑定一个数组变量,同时1、2绑定的固定的数组0位和1位数据一旦切换,则分别使用pop或shift,push或unshift进行数组变量的数据更新这样保证了数组数据切换时,卡片数据的相对固定
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值