* 선택된 비디오의 제목을 표시하고 해당 비디오를 재생한다.
package com.example.hyw_bvideolistapp;
import android.content.Intent;
import android.content.res.Resources;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.widget.LinearLayout;
import android.widget.TextView;
import android.widget.VideoView;
import androidx.appcompat.app.AppCompatActivity;
public class ShowVideo extends AppCompatActivity {
LinearLayout layout;
TextView title;
VideoView video;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.playvideo);
layout = (LinearLayout) findViewById(R.id.videolayout);
title = (TextView) findViewById(R.id.title);
video = (VideoView) findViewById(R.id.video);
Resources res = getResources();
Intent it = getIntent();
String tag = it.getStringExtra("it_tag");
int title_id = res.getIdentifier("title"+tag, "string", getPackageName());
String title_str = res.getString(title_id);
title.setText(title_str);
int video_id =
res.getIdentifier("video"+tag, "string", getPackageName());
String video_str = res.getString(video_id);
int raw_id =
res.getIdentifier(video_str, "raw", getPackageName());
Uri uri = Uri.parse("android.resource://com.example.hyw_bvideolistapp/"+raw_id);
video.setVideoURI(uri);
video.setVisibility(View.VISIBLE);
video.start();
}
}
int raw_id = res.getIdentifier(video_str, "raw", getPackageName()): 이 코드는 리소스의 ID를 가져오는데 사용됩니다. 여기서는 video_str에 해당하는 비디오 리소스의 ID를 가져옵니다. video_str은 이전 액티비티에서 선택된 비디오의 이름을 나타냅니다.
Uri uri = Uri.parse("android.resource://com.example.hyw_bvideolistapp/"+raw_id): 이 코드는 비디오 파일의 Uri를 생성합니다. 여기서 android.resource://로 시작하는 Uri를 사용하여 앱의 리소스로부터 비디오를 로드합니다. com.example.hyw_bvideolistapp은 앱의 패키지명이며, raw_id는 앞서 가져온 비디오 리소스의 ID입니다.
video.setVideoURI(uri): 이 코드는 VideoView에 비디오의 Uri를 설정합니다. 즉, VideoView가 재생할 비디오의 소스를 지정합니다.
video.setVisibility(View.VISIBLE): 이 코드는 VideoView를 화면에 표시하기 위해 가시성을 설정합니다. View.VISIBLE은 뷰를 화면에 보이게 합니다.
video.start(): 이 코드는 VideoView에서 비디오 재생을 시작합니다. 즉, 선택된 비디오를 재생합니다.
'학교 > Android' 카테고리의 다른 글
DBpersonnelRegistApp (AndroidManifest, DBManager, MainActivity, PersonnelDetail, PersonnelInfo, PersonnelList, PersonnelReg) (1) | 2024.06.08 |
---|---|
MainActivity, Showpoem, ShowTrip, ShowVideo java / Manifest.xml (video+poem) (0) | 2024.04.19 |
MainActivity.java (videoListApp) (0) | 2024.04.17 |
ShowPoem.java (poemApp01) (0) | 2024.04.17 |
MainActivity.java (poemApp01) (0) | 2024.04.17 |