www.pudn.com > VideoProject.rar > Mp4List.java
package org.hqx.android.videoproject;
import java.io.File;
import java.io.FilenameFilter;
import java.util.ArrayList;
import java.util.List;
import android.app.ListActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.View;
import android.view.Menu.Item;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.VideoView;
class Mp4Filter implements FilenameFilter {
public boolean accept(File dir, String name) {
return (name.endsWith(".mp4"));
}
}
public class Mp4List extends ListActivity {
private static final int menu_mp4_start_ID = Menu.FIRST;
private static final int menu_mp4_pause_ID = Menu.FIRST+1;
private static final int menu_mp4_exit_ID = Menu.FIRST+2;
public static final String MEDIA_PATH = new String("/sdcard/android/");
private List vedios = new ArrayList();
private VideoView w = null;
@Override
protected void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.mp4list);
Log.d("½øÈëmp4", "what");
w =(VideoView)findViewById(R.id.vdoplayer1);
updateVedioList();
}
public boolean onCreateOptionsMenu(Menu menu) {
super.onCreateOptionsMenu(menu);
menu.add(0, menu_mp4_start_ID, R.string.mp4_menu_start);
menu.add(0, menu_mp4_pause_ID, R.string.mp4_menu_pause);
menu.add(0, menu_mp4_exit_ID, R.string.mp4_menu_exit);
return true;
}
public boolean onMenuItemSelected(int featureId, Item item) {
super.onMenuItemSelected(featureId, item);
switch(item.getId()) {
case menu_mp4_start_ID:
w.start();
break;
case menu_mp4_pause_ID:
w.pause();
break;
case menu_mp4_exit_ID:
setResult(RESULT_OK, null, null);
finish();
break;
}
return true;
}
private void updateVedioList() {
File home = new File(MEDIA_PATH);
if (home.listFiles( new Mp4Filter()).length > 0) {
for (File file : home.listFiles( new Mp4Filter())) {
vedios.add(file.getName());
}
ArrayAdapter vedioList = new ArrayAdapter(this,R.layout.mp4item,vedios);
setListAdapter(vedioList);
}
}
@Override
protected void onListItemClick(ListView l, View v, int position, long id) {
w.setVideoPath(MEDIA_PATH + vedios.get(position));
}
}