自製android視頻播放器

來源:互聯網
上載者:User

剛學android不久,自己做的視頻播放器,如果做的不 好還請大家多多提意見。謝謝啊。話不多說開始代碼部分:

 

 

 

public class ListActivity extends Activity {<br /> /** Called when the activity is first created. */<br />private ListView listview;<br />private int[] ids;<br />private AlertDialog ad = null;<br />private AlertDialog.Builder builder = null;<br />private Vector<String> v;<br /> public static Uri uri;<br /> @Override<br /> public void onCreate(Bundle savedInstanceState) {<br /> super.onCreate(savedInstanceState);</p><p> listview = new ListView(this);<br /> Cursor c = this.getContentResolver()<br /> .query(MediaStore.Video.Media.EXTERNAL_CONTENT_URI,<br /> new String[]{MediaStore.Video.Media.TITLE,<br />MediaStore.Video.Media.DURATION,<br />MediaStore.Video.Media._ID,<br />MediaStore.Video.Media.DISPLAY_NAME ,<br />MediaStore.Video.Media.DATA},<br /> null, null, null);<br /> if (c==null || c.getCount()==0){<br /> builder = new AlertDialog.Builder(this);<br />builder.setMessage("儲存列表為空白...").setPositiveButton("確定", null);<br />ad = builder.create();<br />ad.show();<br /> }<br /> c.moveToFirst();<br /> v=new Vector<String>();<br /> ids = new int[c.getCount()];<br /> for(int i=0;i<c.getCount();i++){<br /> ids[i] = c.getInt(3);</p><p> v.add(c.getString(4));<br /> System.out.println(v.get(i));</p><p> c.moveToNext();<br /> }<br /> listview.setAdapter(new VideoListAdapter(this, c));<br /> listview.setOnItemClickListener(new ListItemClickListener());<br /> setContentView(listview);<br /> }<br /> String string;<br /> class ListItemClickListener implements OnItemClickListener{</p><p> @Override<br /> public void onItemClick(AdapterView<?> arg0, View view, int position, long id) {<br /> // TODO Auto-generated method stub<br /> Intent intent = new Intent(ListActivity.this,PlayActivity.class);<br /> intent.putExtra("ids", ids);<br /> string=v.get(position);</p><p> intent.putExtra("position", position);<br /> startActivity(intent);<br /> uri=Uri.parse(string);<br /> }</p><p> }    java代碼: public class VideoListAdapter extends BaseAdapter {</p><p>private Context myCon;<br />private Cursor myCur;</p><p>public VideoListAdapter(Context con, Cursor cur) {<br />myCon = con;<br />myCur = cur;<br />}</p><p>@Override<br />public int getCount() {<br />return myCur.getCount();<br />}</p><p>@Override<br />public Object getItem(int position) {<br />return position;<br />}</p><p>@Override<br />public long getItemId(int position) {<br />return position;<br />}</p><p>@Override<br />public View getView(int position, View convertView, ViewGroup parent) {<br />convertView = LayoutInflater.from(myCon).inflate(R.layout.rideolist,<br />null);<br />myCur.moveToPosition(position);<br />TextView tv_video = (TextView) convertView.findViewById(R.id.video);<br />tv_video.setText(myCur.getString(0));<br />TextView tv_time = (TextView) convertView.findViewById(R.id.time);<br />tv_time.setText(toTime(myCur.getInt(1)));<br />return convertView;<br />}</p><p>public String toTime(int time) {</p><p>time /= 1000;<br />int minute = time / 60;<br />//int hour = minute / 60;<br />int second = time % 60;<br />minute %= 60;<br />return String.format("%02d:%02d", minute, second);<br />}</p><p>}

 

 

 

public class VideoListAdapter extends BaseAdapter {</p><p>private Context myCon;<br />private Cursor myCur;</p><p>public VideoListAdapter(Context con, Cursor cur) {<br />myCon = con;<br />myCur = cur;<br />}</p><p>@Override<br />public int getCount() {<br />return myCur.getCount();<br />}</p><p>@Override<br />public Object getItem(int position) {<br />return position;<br />}</p><p>@Override<br />public long getItemId(int position) {<br />return position;<br />}</p><p>@Override<br />public View getView(int position, View convertView, ViewGroup parent) {<br />convertView = LayoutInflater.from(myCon).inflate(R.layout.rideolist,<br />null);<br />myCur.moveToPosition(position);<br />TextView tv_video = (TextView) convertView.findViewById(R.id.video);<br />tv_video.setText(myCur.getString(0));<br />TextView tv_time = (TextView) convertView.findViewById(R.id.time);<br />tv_time.setText(toTime(myCur.getInt(1)));<br />return convertView;<br />}</p><p>public String toTime(int time) {</p><p>time /= 1000;<br />int minute = time / 60;<br />//int hour = minute / 60;<br />int second = time % 60;<br />minute %= 60;<br />return String.format("%02d:%02d", minute, second);<br />}

java代碼:

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.