音乐播放器ListView点击事件处理

接上篇,在Adapter中 convertView本身就有一个 setOnClickListener方法。重写方法并传入原 ArrayList<music> MODEL中listview中一个view的position如下:

convertView.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
      listener.OnClick( position);
    }
});

然后在写一个接口,并写出实现这个接口的类(传入position)

interface SetlistViewOnClickListener {
        void  OnClick( int position);

}
public void SetOnClickListeners (SetlistViewOnClickListener listener){
    this.listener=listener;
}

后在主ACTIVITY中去调用此接口。

myAdapter.SetOnClickListeners(new MyAdapter.SetlistViewOnClickListener() {
    @Override
    public void OnClick(int position) {
        music musicItem=data.get(position);
        genxin(musicItem);


    }
});
public void genxin(music music){
    if (mediaPlayer!=null){
        mediaPlayer.pause();
    }
    dibugeming.setText(music.getSinger());
    mediaPlayer=MediaPlayer.create(this,music.getRawid());
    Play();
}
初学时没有老鸟带,光看视频和书很吃力。刚开始写代码,尽量去自已要用到的东西。网上很多成段的代码复制对学习进步帮助不大。如有高手能指点一二万分感激!

猜你喜欢

转载自blog.csdn.net/weixin_41404058/article/details/79706205