Advertisement
aunkang

หน้า4

May 26th, 2017
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5.56 KB | None | 0 0
  1. public class ForthFragment extends Fragment{
  2.  
  3.  
  4.     private ImageView back, backHome;
  5.  
  6.     // Declare variables
  7.     ProgressDialog pDialog;
  8.     VideoView videoView;
  9.     static private int length=0;
  10.     private ImageView ivFullScreen;
  11.     private LinearLayout mom;
  12.     static private String albumnName;
  13.     static private List<PhotoItemDao> dao;
  14.     private String videoName;
  15.     private String videoURL = "";
  16.     public String getAlbumnName() {
  17.         return albumnName;
  18.     }
  19.  
  20.     public void setAlbumnName(String albumnName) {
  21.         this.albumnName = albumnName;
  22.     }
  23.  
  24.     public List<PhotoItemDao> getDao() {
  25.         return dao;
  26.     }
  27.  
  28.     public void setDao(List<PhotoItemDao> dao) {
  29.         this.dao = dao;
  30.     }
  31.  
  32.     public static ForthFragment newInstance(int someVar){
  33.         ForthFragment fragment = new ForthFragment();
  34.         Bundle args = new Bundle(); //argument
  35.         args.putInt("someVar", someVar);
  36.         fragment.setArguments(args);
  37.         return fragment;
  38.     }
  39.  
  40.  
  41.     public static int getLength() {
  42.         return length;
  43.     }
  44.  
  45.     public static void setLength(int length) {
  46.         ForthFragment.length = length;
  47.     }
  48.  
  49.     @Override
  50.     public void onCreate(@Nullable Bundle savedInstanceState) {
  51.         super.onCreate(savedInstanceState);
  52.         Toast.makeText(getContext(), "This is video albumn", Toast.LENGTH_SHORT).show();
  53.  
  54.     }
  55.  
  56.     @Nullable
  57.     @Override
  58.     public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
  59.  
  60.         View rootView = inflater.inflate(R.layout.fragment_forth, container, false);
  61.  
  62.         initInstances(rootView);
  63.  
  64.  
  65.         return rootView;
  66.  
  67.  
  68.     }
  69.  
  70.  
  71.  
  72.     public void initInstances(final View rootView){
  73.  
  74.         back = (ImageView) rootView.findViewById(R.id.back);
  75.         backHome = (ImageView) rootView.findViewById(R.id.back_home);
  76.  
  77.         back.setOnClickListener(clickListener);
  78.         backHome.setOnClickListener(clickListener);
  79.  
  80.         mom = (LinearLayout) rootView.findViewById(R.id.mom);
  81.         ivFullScreen = (ImageView) rootView.findViewById(R.id.ivFullScreen);
  82.         ivFullScreen.setOnClickListener(clickListener);
  83.         videoView = (VideoView) rootView.findViewById(R.id.videoView);
  84.         // Execute StreamVideo AsyncTask
  85.  
  86.         // Create a progressbar
  87.         pDialog = new ProgressDialog(getContext());
  88.         // Set progressbar title
  89.         pDialog.setTitle("Android Video Streaming Tutorial");
  90.         // Set progressbar message
  91.         pDialog.setMessage("Buffering...");
  92.         pDialog.setIndeterminate(false);
  93.         pDialog.setCancelable(false);
  94.         // Show progressbar
  95.         pDialog.show();
  96.  
  97.         try {
  98.  
  99.             // Start the MediaController
  100.             MediaController mediacontroller = new MediaController(
  101.                     getContext());
  102.             mediacontroller.setAnchorView(videoView);
  103.             // Get the URL from String VideoURL
  104.  
  105.             for(PhotoItemDao p: getDao()){
  106.  
  107.                 if(p.getAlbumnName().equals(getAlbumnName())){
  108.                     videoURL = "http://192.168.1.6/dashboard/senior-project/uploads/videos/";
  109.                     Toast.makeText(getContext(), getAlbumnName(), Toast.LENGTH_LONG).show();
  110.                     p.getStep().getAllStep().get(0);
  111.                     videoName = p.getStep().getAllStep().get(0);
  112.                     videoURL += videoName;
  113.                     Toast.makeText(getContext(), videoURL, Toast.LENGTH_LONG).show();
  114.                     break;
  115.                 }
  116.             }
  117.             Uri video = Uri.parse(videoURL);
  118.             videoView.setMediaController(mediacontroller);
  119.             videoView.setVideoURI(video);
  120.  
  121.         } catch (Exception e) {
  122.             Log.e("Error", e.getMessage());
  123.             e.printStackTrace();
  124.         }
  125.  
  126.         videoView.requestFocus();
  127.         videoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
  128.             // Close the progress bar and play the video
  129.             public void onPrepared(MediaPlayer mp) {
  130.                 pDialog.dismiss();
  131.                 if(length>0){
  132.                     videoView.seekTo(length);
  133.                 }
  134.  
  135.             }
  136.         });
  137.  
  138.     }
  139.  
  140.     @Override
  141.     public void onSaveInstanceState(Bundle outState) {
  142.         super.onSaveInstanceState(outState);
  143.     }
  144.  
  145.     @Override
  146.     public void onActivityCreated(@Nullable Bundle savedInstanceState) {
  147.         super.onActivityCreated(savedInstanceState);
  148.         if(null != savedInstanceState){
  149.             //
  150.         }
  151.     }
  152.  
  153.     @Override
  154.     public void onPause() {
  155.         super.onPause();
  156.         length = videoView.getCurrentPosition();
  157.     }
  158.  
  159.     View.OnClickListener clickListener = new View.OnClickListener() {
  160.         @Override
  161.         public void onClick(View v) {
  162. // Gets linearlayout
  163.             if (v == back) {
  164.                 getFragmentManager().popBackStack();
  165.             } else if (v == backHome) {
  166.                 getFragmentManager().popBackStack(null, getFragmentManager().POP_BACK_STACK_INCLUSIVE);
  167.             }else{
  168.                 length = videoView.getCurrentPosition();
  169.                 FullScreenFragment fullScreenFragment = new FullScreenFragment();
  170.                 fullScreenFragment.setLength(length);
  171.                 getActivity().getSupportFragmentManager().beginTransaction()
  172.                         .replace(R.id.contentContainer, FullScreenFragment.newInstance(videoURL))
  173.                         .addToBackStack(null)
  174.                         .commit();
  175.             }
  176.  
  177.         }
  178.     };
  179. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement