admin
2021-07-20 27bd1f81221b8c8e8047118a64c2beb7bc214bbb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
package com.yeshi.video.ui;
 
import android.app.Dialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.WindowManager;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.GridView;
 
import com.lcjian.library.dialog.SlidingDialog;
import com.umeng.analytics.MobclickAgent;
import com.yeshi.base.entity.video.VideoDetailInfo;
import com.yeshi.base.entity.video.VideoInfo;
import com.yeshi.base.utils.video.VideoTypeUtil;
import com.yeshi.video.R;
import com.yeshi.video.ui.adapter.GridEpisodeAdapter2;
 
import androidx.fragment.app.DialogFragment;
import de.greenrobot.event.EventBus;
 
/**
 * 全屏播放-选集页面
 * 
 * @author weikou2015
 * 
 */
public class VideoEpisodeFragment2 extends DialogFragment {
 
    private VideoInfo mVideoInfo;
 
    private int mPlayingPosition;
 
    private GridView gv_episode2;
 
    public static VideoEpisodeFragment2 newInstance(VideoInfo videoInfo,
            int playingPostion) {
        VideoEpisodeFragment2 videoEpisodeFragment2 = new VideoEpisodeFragment2();
        Bundle args = new Bundle();
        args.putSerializable("video_info", videoInfo);
        args.putInt("playing_position", playingPostion);
        videoEpisodeFragment2.setArguments(args);
        return videoEpisodeFragment2;
    }
 
    @Override
    public Dialog onCreateDialog(Bundle savedInstanceState) {
        Dialog dialog = new SlidingDialog(getActivity());
        dialog.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
                WindowManager.LayoutParams.FLAG_FULLSCREEN);
        return dialog;
    }
 
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        mVideoInfo = (VideoInfo) getArguments().getSerializable("video_info");
        mPlayingPosition = getArguments().getInt("playing_position");
 
        View view = inflater.inflate(R.layout.video_episode_fragment2,
                container, false);
        gv_episode2 = (GridView) view.findViewById(R.id.gv_episode2);
        if ((mVideoInfo.getVideoDetailList().size() == 1 && !VideoTypeUtil
                .getVideoRootName(mVideoInfo.getVideoType()).equalsIgnoreCase(
                        "综艺"))
                || VideoTypeUtil.getVideoRootName(mVideoInfo.getVideoType())
                        .equalsIgnoreCase("综艺")) {
            gv_episode2.setNumColumns(1);
        }
 
        if (mVideoInfo.getVideoDetailList() != null
                && !mVideoInfo.getVideoDetailList().isEmpty()) {
            gv_episode2.setAdapter(new GridEpisodeAdapter2(mVideoInfo,
                    mPlayingPosition));
            gv_episode2.setOnItemClickListener(new OnItemClickListener() {
 
                @Override
                public void onItemClick(AdapterView<?> parent, View view,
                        int position, long id) {
                    VideoDetailInfo videoDetailInfo = (VideoDetailInfo) parent
                            .getItemAtPosition(position);
                    EventBus.getDefault().post(videoDetailInfo);
                    try {
                        dismiss();
                    } catch (Exception e) {
 
                    }
                }
            });
        } else {
            gv_episode2.setVisibility(View.GONE);
        }
        return view;
    }
 
    @Override
    public void onResume() {
        super.onResume();
        EventBus.getDefault().register(this);
        MobclickAgent.onPageStart("全屏播放—选集");
    }
 
    @Override
    public void onPause() {
        super.onPause();
        EventBus.getDefault().unregister(this);
        MobclickAgent.onPageEnd("全屏播放—选集");
    }
 
    @Override
    public void onDismiss(DialogInterface dialog) {
        super.onDismiss(dialog);
        EventBus.getDefault().post(new VideoPlayerFragment.PlayEvent());
    }
 
    public void onEventMainThread(VideoDetailInfo videoDetailInfo) {
        int playingPosition = 0;
        for (int i = 0; i < mVideoInfo.getVideoDetailList().size(); i++) {
            if (videoDetailInfo.getId().equals(
                    mVideoInfo.getVideoDetailList().get(i).getId())) {
                playingPosition = i;
                break;
            }
        }
        if (mPlayingPosition != playingPosition) {
            mPlayingPosition = playingPosition;
            ((GridEpisodeAdapter2) gv_episode2.getAdapter())
                    .setPlayingPosition(mPlayingPosition);
            ((GridEpisodeAdapter2) gv_episode2.getAdapter())
                    .notifyDataSetChanged();
        }
    }
}