当前位置:操作系统 > 安卓/Android >>

Android 开发之:Intent.createChooser() 妙用

Intent.createChooser(ntent target, CharSequence title)

其实 大家对该功能第一影响就是ApiDemo 里面的 其只有区区几行代码  提取为:

Intent intent = new Intent(Intent.ACTION_GET_CONTENT);   

  1. intent.setType("audio/*");   
  2. startActivity(Intent.createChooser(intent, "Select music"));  

 

执行之 会弹出一个对话框 效果为:

\

其实 对于这段代码 大家应该都能猜出什么意思  现自己模拟并理解之

[代码]

1. 定义TestActivity 用于根据传入Uri  播放目标

public class TestActivity extends Activity {   
  1.        
  2.     @Override  
  3.     public void onCreate(Bundle savedInstanceState) {   
  4.         super.onCreate(savedInstanceState);   
  5.         setContentView(R.layout.main);   
  6.         this.setTitle("TestActivity");   
  7.            
  8.         Intent i = this.getIntent();   
  9.            
  10.         Uri u = i.getData();   
  11.            
  12.         try {   
  13.             playMusic(u);   
  14.         } catch (IllegalArgumentException e) {   
  15.             // TODO Auto-generated catch block   
  16.             e.printStackTrace();   
  17.         } catch (SecurityException e) {   
  18.             // TODO Auto-generated catch block   
  19.             e.printStackTrace();   
  20.         } catch (IllegalStateException e) {   
  21.             // TODO Auto-generated catch block   
  22.             e.printStackTrace();   
  23.         } catch (IOException e) {   
  24.             // TODO Auto-generated catch block   
  25.             e.printStackTrace();   
  26.         }   
  27.     }   
  28.        
  29.     public void playMusic(Uri uri) throws IllegalArgumentException, SecurityException, IllegalStateException, IOException{   
  30.         MediaPlayer mp = new MediaPlayer();   
  31.         mp.setDataSource(this, uri);   
  32.         mp.prepare();   
  33.         mp.start();   
  34.     }   
  35. }  

2. 在AndroidManifest 注册TestActivity

<activity<
补充:移动开发 , Android ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,