2011-01-28 7 views
1

私のアプリケーションでは、リストビューでビデオをリストに表示しようとしていますActivityと選択したビデオのサムネイルを別のActivityに表示しようとしています、ImageViewにこの中ビデオの一意のIDを取得する方法

iv = (ImageView)findViewById(R.id.imagePreview); 
ContentResolver crThumb = getContentResolver(); 
BitmapFactory.Options options=new BitmapFactory.Options(); 
options.inSampleSize = 1; 
Bitmap curThumb = MediaStore.Video.Thumbnails.getThumbnail(crThumb, id, MediaStore.Video.Thumbnails.MICRO_KIND, options); 
iv.setScaleType(ScaleType.CENTER_CROP); 
iv.setImageBitmap(curThumb); 

をサムネイルを表示するには、それは私が

Bitmap curThumb = MediaStore.Video.Thumbnails.getThumbnail(crThumb, id, MediaStore.Video.Thumbnails.MICRO_KIND, options); 

idための整数値を指定した場合にのみ、サムネイルが表示されますが、私が欲しいのはid値fを取得することですまたは私が望むように新しいActivityを表示できるように選択されたビデオ。

ありがとうございました。

答えて

0

String[] projection = { BaseColumns._ID, MediaColumns.DATA };    
Cursor cursor = managedQuery(data, projection, null, null, null); 
cursor.moveToFirst(); 
int columnIndex = cursor.getColumnIndexOrThrow(BaseColumns._ID); 
int id = cursor.getInt(columnIndex); 

このコードはあなたを助けるでしょう、「データ」を選択した映像

+0

確かに?私は使用しようとしました - Uri videoUri = Uri.fromFile(新しいファイル(videoFilePath)); - 使用するURIを取得するが、managequeryを呼び出すと常にnullオブジェクトが返される。そして、はい、videoFilePathは現実のパスです – Rainbowbreeze

+0

データはコンテンツUriではないファイルUriです。 –

0

のURIは、このお試しくださいされます。コードが動作するという事実についての詳細Click Here

int id = cursor.getInt(cursor.getColumnIndex(MediaStore.Video.Media._ID)); 
String[] thumbColumns = { MediaStore.Video.Thumbnails.DATA, 
MediaStore.Video.Thumbnails.VIDEO_ID}; 
Cursor thumbCursor = managedQuery(MediaStore.Video.Thumbnails.EXTERNAL_CONTENT_URI, 
thumbColumns, MediaStore.Video.Thumbnails.VIDEO_ID + "=" + id, null, null); 
if (thumbCursor.moveToFirst()) { 
     Log.v("VideoGallery",thumbCursor.getColumnIndex(MediaStore.Video.Thumbnails.DATA)); 
} 
関連する問題