package com.ntp.ui.course; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.widget.LinearLayout; import android.widget.ListView; import android.widget.Toast; import com.ntp.base.BaseFragment; import com.ntp.model.gson.CourseVideoGson; import com.ntp.network.HttpRequestHelper; import com.ntp.network.okhttp.ObjectCallbackHandler; import com.ntp.ui.R; import com.ntp.adapter.CoursevideoAdapter; import com.ntp.util.ConstantValue; import com.ntp.util.AppConfig; import com.ntp.model.Coursevideo; import com.ntp.util.ErrorCodeUtil; import com.ntp.util.NetworkStateUtil; import com.squareup.okhttp.Request; import org.xutils.view.annotation.ContentView; import org.xutils.view.annotation.ViewInject; import java.io.IOException; import java.util.ArrayList; import java.util.List; /** * 课程教学视频 */ @ContentView(R.layout.fragment_course_video) public class CoursevideoFragment extends BaseFragment implements CoursevideoAdapter.Callback { @ViewInject(R.id.coursevideoList) private ListView mCoursevideoList; @ViewInject(R.id.load) private LinearLayout load; private CoursevideoAdapter mCoursevideoAdapter; private List<Coursevideo> list=new ArrayList<Coursevideo>(); private String code;//课程代码 @Override public void onViewCreated(View view, Bundle savedInstanceState) { super.onViewCreated(view, savedInstanceState); code = getArguments().getString("code"); HttpRequestHelper.getInstance().getCourseVideo(code,new ObjectCallbackHandler<CourseVideoGson>(){ @Override public void onFailure(Request request, IOException e, int response) { super.onFailure(request, e, response); load.setVisibility(View.GONE); showToast(ErrorCodeUtil.SERVER_ERROR); } @Override public void onResponse(CourseVideoGson courseVideoGson) { super.onResponse(courseVideoGson); if (courseVideoGson!=null){ for (CourseVideoGson.VideosEntity videosEntity:courseVideoGson.getVideos()){ Coursevideo coursevideo = new Coursevideo(videosEntity.getName(),videosEntity.getPath(),videosEntity.getSize()); list.add(coursevideo); } load.setVisibility(View.GONE); mCoursevideoAdapter = new CoursevideoAdapter(list, getActivity(), CoursevideoFragment.this); mCoursevideoList.setAdapter(mCoursevideoAdapter); }else { load.setVisibility(View.GONE); } } }); } /** * 回调接口方法 */ @Override public void click(View v) { switch (v.getId()) { case R.id.watch://观看视频 //检测网络是否可用 if (!NetworkStateUtil.isNetworkConnected(getActivity().getApplicationContext())) { Toast.makeText(getActivity().getApplicationContext(), "当前网络不可用", Toast.LENGTH_LONG).show(); break; } //检查当前是否禁用了移动网络下载课件和播放视频 if (NetworkStateUtil.isMobileConnected(getActivity().getApplicationContext()) && !AppConfig.getConfig(getActivity().getApplicationContext())) { Toast.makeText(getActivity().getApplicationContext(), "你已经禁用移动网络下载课件和观看视频", Toast.LENGTH_LONG).show(); break; } int position=Integer.parseInt(v.getTag().toString()); String path=list.get(position).getPath(); Intent intent = new Intent(getActivity(), VideoPlayActivity.class); intent.putExtra("path", ConstantValue.PATH_DOWNLOAD_COURSE_VIDEO+path); startActivity(intent); break; } } }