Показать видео файлы в виде списка из папки SDCard - PullRequest
3 голосов
/ 12 октября 2011

Я пытаюсь отобразить видеофайлы в виде списка из папки «abc» на SDCard, я успешно их отображаю, но проблема в том, что она отображает все видеофайлы, хранящиеся на SDCard, даже из папки «ABC», на самом деле я хочу, чтобы только видеофайлы хранились в папке «abc» для отображения. Я гуглюсь больше дней, но не нашел решения для этого. Мой код:

videocursor = managedQuery(MediaStore.Video.Media.EXTERNAL_CONTENT_URI,
proj, null, null, null);
count = videocursor.getCount();
videolist = (ListView) findViewById(R.id.listview);
videolist.setAdapter(new VideoAdapter(getApplicationContext()));
videolist.setOnItemClickListener(videogridlistener);
}
private OnItemClickListener videogridlistener = new OnItemClickListener() {
public void onItemClick(AdapterView<?>parent, View v, int position,
long id) {
System.gc();
video_column_index = videocursor.getColumnIndexOrThrow(MediaStore.Video.Media.DATA);
videocursor.moveToPosition(position);
String filename = videocursor.getString(video_column_index);
Intent intent = new Intent(VideoActivity.this, ViewVideo.class);
intent.putExtra("videofilename", filename);
startActivity(intent);
}
};

public class VideoAdapter extends BaseAdapter {
private Context vContext;
public VideoAdapter(Context c) {
vContext = c;
}

public int getCount() {
return count;
}

public Object getItem(int position) {
return position;
}

public long getItemId(int position) {
return position;
}

public View getView(int position, View convertView, ViewGroup parent) {
System.gc();
TextView tv = new TextView(vContext.getApplicationContext());
String id = null;
if (convertView == null) {
video_column_index = videocursor.getColumnIndexOrThrow(MediaStore.Video.Media.TITLE);
videocursor.moveToPosition(position);
id = videocursor.getString(video_column_index);
tv.setText(id);
} 
else
{
tv = (TextView) convertView;
return tv;
}

Есть подсказка? Заранее спасибо.

Ответы [ 3 ]

0 голосов
/ 12 октября 2011

Укажите критерии фильтрации для управляемого запроса, который фильтрует имя вашей папки.

Посмотрите на javadoc для метода .У него есть критерии для выбора записей.Это должно позволить вам выбрать желаемое подмножество.

0 голосов
/ 23 мая 2016

Не используйте этот следующий код:

video_column_index = videocursor.getColumnIndexOrThrow (MediaStore.Video.Media.DATA);

Изменить этот код с помощью следующего кода:

videocursor = MainActivity.this.1008 * ЭТО ПОМОЖЕТ ВАМ УВЕРЕНЫ .......

0 голосов
/ 12 октября 2011

В этом случае не используйте контент-провайдера. Поставщик контента предоставит вам информацию обо всех видео, которые он может найти на вашем устройстве.

Напишите свою собственную маленькую утилиту для сканирования и получения необходимых вам файлов / папок.

...