Android 单击播放列表中的项目后,如何显示视频?有什么想法吗

Android 单击播放列表中的项目后,如何显示视频?有什么想法吗,android,media-player,android-videoview,android-logcat,Android,Media Player,Android Videoview,Android Logcat,========================================主打================================================= ==这是第一个显示所有文件的地方,可以选择要播放的文件====== package com.example.droid; import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import an

========================================主打================================================= ==这是第一个显示所有文件的地方,可以选择要播放的文件======

package com.example.droid;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import android.net.Uri;
import android.os.Bundle;
import android.provider.MediaStore;
import android.app.ListActivity;
import android.content.ContentResolver;
import android.content.Intent;
import android.database.Cursor;
import android.util.Log;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ListView;


public class mainplay extends ListActivity {


          private ArrayList<Video> videoList;
          private ListView videoView;


        @Override
        protected void onCreate(Bundle savedInstanceState){
            super.onCreate(savedInstanceState);
            setContentView(R.layout.videoplaylist);

            videoView = (ListView)findViewById(android.R.id.list);  
            videoList = new ArrayList<Video>();
            getVideoList();


            Collections.sort(videoList, new Comparator<Video>(){
                  public int compare(Video a, Video b){
                    return a.getTTL().compareTo(b.getTTL());
                  }
                }); 

            VideoAdapter VAdp = new VideoAdapter(this, videoList);
            videoView.setAdapter(VAdp);

        }




        public void getVideoList(){
            //retrieve video info   
            ContentResolver videoResolver = getContentResolver();
            Uri videoUri = android.provider.MediaStore.Video.Media.EXTERNAL_CONTENT_URI;
            Cursor videoCursor = videoResolver.query(videoUri, null, null, null, null);

            if(videoCursor!=null && videoCursor.moveToFirst()){
                  //get columns
                  int titleColumn = videoCursor.getColumnIndex
                    (android.provider.MediaStore.Video.Media.TITLE);
                  int idColumn = videoCursor.getColumnIndex
                    (android.provider.MediaStore.Video.Media._ID);

                  //add videos to list
                  do {
                    long thisId = videoCursor.getLong(idColumn);
                    String thisTitle = videoCursor.getString(titleColumn);
                    Log.e("video", thisTitle);
                    videoList.add(new Video(thisId, thisTitle));
                  }
                  while (videoCursor.moveToNext());


                  ListView listView = ( ListView ) findViewById(android.R.id.list);
                  OnItemClickListener itemClick = new OnItemClickListener(){

                      @Override
                      public void onItemClick(AdapterView<?> parent, View v,
                              int position, long id) {

                          Intent Droid=new Intent(mainplay.this,DroidActivity.class);
                          startActivity(Droid);


                      }

                  };
                  listView.setOnItemClickListener(itemClick);
            }

        }

}

这是唯一的一个解决方案。 使用视频ID发送捆绑包(我假设列ID是唯一的) 例如:

Bundle bundle = new Bundle();
bundle.putInt("VIDEO_ID",video_id);
Intent Droid=new Intent(mainplay.this,DroidActivity.class);
Droid.putExtra(bundle);                          
startActivity(Droid);
这会将选择发送到其他活动

论驱动力

在onStart/OnResume上 用这个

现在按您发送的columid从列表中加载视频。 当columnId等于所选视频id时,移动列表

Bundle bundle = new Bundle();
bundle.putInt("VIDEO_ID",video_id);
Intent Droid=new Intent(mainplay.this,DroidActivity.class);
Droid.putExtra(bundle);                          
startActivity(Droid);
int value = getIntent().getExtras().getString("VIDEO ID")