Android 如何从gallery中选择视频并将所选视频图标设置为ImageView
使用Gallery中的图片成功地执行了此技术 但我想在音频和视频中实现同样的功能。 代码是Android 如何从gallery中选择视频并将所选视频图标设置为ImageView,android,gallery,onactivityresult,video-gallery,Android,Gallery,Onactivityresult,Video Gallery,使用Gallery中的图片成功地执行了此技术 但我想在音频和视频中实现同样的功能。 代码是 public void video(View v) { Intent i = new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Video.Media.EXTERNAL_CONTENT_URI); RESULT_LOAD_VIDEO = 1; startActivityForResult(i
public void video(View v)
{
Intent i = new Intent(Intent.ACTION_PICK,
android.provider.MediaStore.Video.Media.EXTERNAL_CONTENT_URI);
RESULT_LOAD_VIDEO = 1;
startActivityForResult(i, RESULT_LOAD_VIDEO);
}
public void audio(View v)
{
Intent i = new Intent(Intent.ACTION_PICK,
android.provider.MediaStore.Audio.Media.EXTERNAL_CONTENT_URI);
RESULT_LOAD_AUDIO = 1;
startActivityForResult(i, RESULT_LOAD_AUDIO);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == RESULT_LOAD_IMAGE && resultCode == RESULT_OK &&null != data)
{
Uri selectedImage = data.getData(); String[]
filePathColumn = { MediaStore.Images.Media.DATA };
Cursor cursor = getContentResolver().query(selectedImage,filePathColumn, null, null, null);
cursor.moveToFirst();
int columnIndex = cursor.getColumnIndex(filePathColumn[0]);
String picturePath = cursor.getString(columnIndex); cursor.close();
// String picturePath contains the path of selected Image
NewPoll.flag++;
Path.patha= picturePath;
Intent ints=new Intent(getApplicationContext(),NewPoll.class);
ints.putExtra("address",picturePath);
ints.putExtra("option",comingData);
startActivity(ints);
}
if (requestCode == RESULT_LOAD_VIDEO && resultCode == RESULT_OK &&null != data)
{
Uri selectedVideo= data.getData(); String[]
filePathColumn = { MediaStore.Video.Media.DATA };
Cursor cursor = getContentResolver().query(selectedVideo,filePathColumn, null, null, null);
cursor.moveToFirst();
int columnIndex = cursor.getColumnIndex(filePathColumn[0]);
String videoPath = cursor.getString(columnIndex); cursor.close();
// String picturePath contains the path of selected Image
NewPoll.flag++;
Path.patha= videoPath;
Intent ints=new Intent(getApplicationContext(),NewPoll.class);
ints.putExtra("address",videoPath);
ints.putExtra("option",comingData);
startActivity(ints);
}
if (requestCode == RESULT_LOAD_AUDIO && resultCode == RESULT_OK &&null != data)
{
Uri selectedAudio= data.getData(); String[]
filePathColumn = { MediaStore.Audio.Media.DATA };
Cursor cursor = getContentResolver().query(selectedAudio,filePathColumn, null, null, null);
cursor.moveToFirst();
int columnIndex = cursor.getColumnIndex(filePathColumn[0]);
String audioPath = cursor.getString(columnIndex); cursor.close();
// String picturePath contains the path of selected Image
NewPoll.flag++;
Path.patha= audioPath;
Intent ints=new Intent(getApplicationContext(),NewPoll.class);
ints.putExtra("address",audioPath);
ints.putExtra("option",comingData);
startActivity(ints);
}
}
我的照片库很成功,但不知道如何使用视频和音频库
收到你方的代码!
谢谢什么是控制器??忽略它实际上它是我保存数据的类名,你可以将数据保存到任何地方确定!我试过你的代码,它没有错误,我试过调试,你的代码正在执行,但没有输出,它甚至没有打开图库…都德,它只给你所有的图像细节,如名称路径等,然后你只需要让一个适配器获取网格视图,并利用我的数据进行设置:)它的自定义都德
//from this u get all audio
private void getallaudio()
{
String[] STAR = { "*" };
Cursor audioCursor = ((Activity) cntx).managedQuery(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, STAR, null, null, null);
if (audioCursor != null)
{
if (audioCursor.moveToFirst())
{
do
{
String path = audioCursor.getString(audioCursor.getColumnIndex(MediaStore.Audio.Media.DATA));
controller.audioWrapper.add(new MediaWrapper(new File(path).getName(), path, "Audio",false,color_string));
// Log.i("Audio Path",path);
}while (audioCursor.moveToNext());
}
// audioCursor.close();
}
}
//from this u get all video
private void getallvideo()
{
String[] STAR = { "*" };
controller.videoWrapper.clear();
Cursor videoCursor = ((Activity) cntx).managedQuery(MediaStore.Video.Media.EXTERNAL_CONTENT_URI, STAR, null, null, null);
if (videoCursor != null)
{
if (videoCursor.moveToFirst())
{
do
{
String path = videoCursor.getString(videoCursor.getColumnIndex(MediaStore.Images.Media.DATA));
controller.videoWrapper.add(new MediaWrapper(new File(path).getName(), path, "Video",false,color_string));
// Log.i("Video Path",path);
}while (videoCursor.moveToNext());
}
// videoCursor.close();
}
}