SD 카드에서 비디오 파일을 재생할 수 없습니다. - SD 카드에서 특정 비디오 파일을 재생하고 있습니다. - 목록에서 비디오를 선택하면 비디오가 재생되지 않습니다. - videoView 클래스에 의도를 전달하고 있습니다. 읽지 않습니다.SD 카드 비디오가 재생되지 않습니까?
public class AndroidThumbnailList extends ListActivity{
String[] videoFileList = {
"/sdcard/Periodontal/Perio-Probling.mp4",
"/sdcard/Periodontal/Inlays.mp4"
/* "/sdcard/Video/Onlays.mp4",
"/sdcard/Video/Root Canal Treatment.mp4",
"/sdcard/Video/crown4.mp4",
"/sdcard/Video/crown5.mp4",
"/sdcard/Video/crown6.mp4",
"/sdcard/Video/crown7.mp4"*/
};
public class MyThumbnaildapter extends ArrayAdapter<String>{
public MyThumbnaildapter(Context context, int textViewResourceId,
String[] objects) {
super(context, textViewResourceId, objects);
// TODO Auto-generated constructor stub
}
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
View row = convertView;
if(row==null){
LayoutInflater inflater=getLayoutInflater();
row=inflater.inflate(R.layout.row, parent, false);
}
row.setOnClickListener(new OnClickListener() {
public void onClick(View arg0) {
if(position==0)
{
Intent intent = new Intent(AndroidThumbnailList.this, ViewVideo.class);
intent.putExtra("videofilename", videoFileList);
startActivity(intent);
}
/*if(position==1)
{
Intent intent = new Intent(mContext, PeriodontalCare.class);
mContext.startActivity(intent);
}
if(position==2)
{
Intent i = new Intent(mContext, CosmeticCare.class);
mContext.startActivity(i);
}*/
}
});
TextView textfilePath = (TextView)row.findViewById(R.id.FilePath);
textfilePath.setText(videoFileList[position]);
ImageView imageThumbnail = (ImageView)row.findViewById(R.id.Thumbnail);
Bitmap bmThumbnail;
bmThumbnail = ThumbnailUtils.createVideoThumbnail(videoFileList[position], Thumbnails.MICRO_KIND);
imageThumbnail.setImageBitmap(bmThumbnail);
return row;
}
}
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setListAdapter(new MyThumbnaildapter(AndroidThumbnailList.this, R.layout.row, videoFileList));
}
은} 내 VideoView를 지켜 보면서 클래스
다음VideoView
findViewById
을
public class ViewVideo extends Activity {
private String videoFileList;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// setContentView(R.layout.videofile);
// mVideoView = (VideoView) findViewById(R.id.surface_view);
System.gc();
Intent i = getIntent();
Bundle extras = i.getExtras();
videoFileList = extras.getString("videofilename");
VideoView vv = new VideoView(getApplicationContext());
setContentView(vv);
vv.setVideoPath(videoFileList);
vv.setMediaController(new MediaController(this));
vv.requestFocus();
vv.start();
}
}
그리드 상품에 OnClickListener를 사용하지 마십시오. 그리드 뷰에서 제공하는 onItemSelected (또는 뭔가)를 사용하십시오. 행 오브젝트가 재사용되기 때문입니다. – njzk2