美文网首页
李倩 -- 论文讲解

李倩 -- 论文讲解

作者: Fate_fighting | 来源:发表于2018-06-04 22:57 被阅读0次

    1 具体实现功能简介-网络/本地音乐

    获取网络音乐

    • 通过网络获取音乐的封面,音乐名称,网络音乐的URL

    读取本地音乐

    • 客户端启动,遍历cd卡,将cd卡中的音乐文件保存到一个ArrayList之中,保存音乐的路径.和音乐名称

    通过listView进行显示音乐列表.给listView的item添加点击事件,点击item之后,Intent(是Activity和Activity连接的桥梁)获取item的数据,启动播放的Activity.播放的Acitvity进行播放此歌曲.

    bmob云查找音乐代码
    http://doc.bmob.cn/data/android/index.html#_5

    搜索

    网络搜索

     //查找Person表里面id为6b6c11c537的数据  
    BmobQuery<Person> bmobQuery = new BmobQuery<Person>();  
    bmobQuery.getObject("6b6c11c537", new >QueryListener<Person>() {  
    @Override  
    public void done(Person object,BmobException e) {  
        if(e==null){  
            toast("查询成功");  
        }else{  
            toast("查询失败:" + e.getMessage());  
        }  
    }  
    });  
    

    本地搜索

    1. 获取手机sd卡,遍历sd卡,查找音乐文件,将歌曲名称和歌曲的绝对路径保存到一个ArrayList中
    2. 遍历一个ArrayList,将输入的歌名和ArrayList中的歌曲名称进行比较,发现ArrayList中的歌曲名称包含输入的歌名,则显示出来。
      3.将结果显示到ListView中。

    弹框如何实现

    AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());//创建弹框的Builder
    builder.setTitle("请选择:");//标题
    final AlertDialog  dialog;//创建弹框对象
    View view2 = LayoutInflater.from(getActivity()).inflate(R.layout.item_lv, null);//创建显示界面
    builder.setView(view2);//将显示界面设置如弹框中
    dialog = builder.create();//实例化弹框
    TextView shouchang = (TextView) view2.findViewById(R.id.item_lv_shouchang);
    shouchang.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
            toastS("收藏成功");
            videolove.add(videoAll.get(position));
            videoloveID.add(videoAll.get(position));
            dialog.dismiss();//将弹框取消
        }
    });
    dialog.show( );
    

    收藏

    videolove --> ArrayList 保存我们收藏的音乐
    保存的是音乐的绝对路径
    videolove.add(videoAll.get(position));
    videoloveID.add(videoAll.get(position));

    音乐播放

    mediaPlayer = MyMediaPlayer.getMediaPlayer();  //创建音乐播放对象
    mediaPlayer.seekTo(int(跳转到那个时间));     //跳转到什么时间点,在进行播放
    mediaPlayer.reset(); //初始化对象  
    mediaPlayer.setDataSource(url);//设置歌曲的路径,可以是本地音乐(绝对路径),也可以是url(网络歌曲)。
    mediaPlayer.prepareAsync();//加载资源  
    mediaPlayer.setOnPreparedListener(new OnPreparedListener() { //监听资源是否加载完毕,如果加载完毕就进行播放
        @Override
        public void onPrepared(MediaPlayer mp) {
            mp.start();//播放音乐
        }
    });
    

    如果实现界面跳转

    Intent intent = new Intent(getActivity(), MusicActivity.class(要跳转的Activity));
    intent.putExtra("key","携带的数据");
    startActivity(intent);
    

    下载

    • 1.创建一个URL对象 URL
    • 2.创建一个HTTP链接 HttpURLConnection
    • 3.使用IO流获取数据 InputStream

    歌词

    读取歌词文件,放入ArrayList中,将歌词放到TextView,每秒刷新一次

    listview如何实现点击事件

    通过观察者设计模式,将点击事件传到监听事件中

    LV.setOnItemClickListener(new OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> parent, View view,int position, long id) {
        }
     });
    LV.setOnItemLongClickListener(new OnItemLongClickListener() {
            @Override
            public boolean onItemLongClick(AdapterView<?> parent, View view,final int position, long id) {
     }
    });
    

    技术

    mvc设计模式

    相关文章

      网友评论

          本文标题:李倩 -- 论文讲解

          本文链接:https://www.haomeiwen.com/subject/khsusftx.html