zoukankan      html  css  js  c++  java
  • Android adapter适配器的学习

      学习Android有一点时间,说说自己的学习感悟。

      首先呢,先说说适配器的作用,顾名思义,它就是把数据定义好一定的规则,使得我们可以用到ListView GridView等上面

      所以说这玩意,还是得好好研究研究的。

      适配器呢,常用有两种SimpleAdapter 还有 ArrayAdapter 当然还有很多种了它们都继承了baseAdapter类;

      有时候因为条件的需要,可能官方给出适配器并不适用我们的需求,

      嘎嘎

      所以了,我们就需要自定义一个Adapter了,

      首先在工程里建一个class 继承 baseAdapter类

      添加它的几个方法 ,当然它是自动帮我们添加好的,不过也有人品不好的时候,getCount(), getItem(int arg0), getItemId(int arg0),getView(int position, View convertView, ViewGroup parent)

     在初始化的传递上下文,

    好的现在基本上就完成了,主要在getView上画好我们想要的样子就Ok了

    import java.util.List;
    import com.spyrx7.Module.Music;
    import com.spyrx7.MusicSite.R;

    import android.content.Context;
    import android.view.LayoutInflater;
    import android.view.View;
    import android.view.ViewGroup;
    import android.widget.BaseAdapter;
    import android.widget.ImageView;
    import android.widget.TextView;

    public class MusicAdapter extends BaseAdapter {
    private Context context;
    private List<Music> MusicList;
    public MusicAdapter(Context context,List<Music> list) {
    this.context=context;
    this.MusicList=list;
    }
    public void setListItem(List<Music> listMusic){
    this.MusicList=listMusic;
    }
    @Override
    public int getCount() {
    // TODO Auto-generated method stub
    return MusicList.size();
    }
    @Override
    public Object getItem(int arg0) {
    // TODO Auto-generated method stub
    return MusicList.get(arg0);
    }
    @Override
    public long getItemId(int arg0) {
    // TODO Auto-generated method stub
    return arg0;
    }
    @Override
    public View getView(int position, View convertView, ViewGroup parent) {

    if(convertView==null)
    {
    convertView=LayoutInflater.from(context).inflate(R.layout.musicinput, null);

    }

    Music m=MusicList.get(position);

    ImageView img=(ImageView)convertView.findViewById(R.id.imgTagmusic);
    TextView tvMusic=(TextView)convertView.findViewById(R.id.tcMusicName);
    TextView tvSinger=(TextView)convertView.findViewById(R.id.txSinger);
    tvMusic.setText(m.getMusic());
    tvSinger.setText(m.getSinger());

    return convertView;
    }

    }

      

  • 相关阅读:
    Maven打包时过滤测试代码或指定特定的测试类(maven-surefire-plugin)
    Maven项目配置外部依赖(本地依赖)
    手把手教你创建「人物角色Persona」
    微服务与Docker介绍
    深入学习微框架:Spring Boot
    技术干货:我们的项目是如何技术选型的
    为什么选择Spring Boot作为微服务的入门级微框架
    Android Material Design 兼容库的使用详解
    Android 实现QQ、微信、新浪微博和百度第三方登录
    Android ijkplayer详解使用教程
  • 原文地址:https://www.cnblogs.com/spyrx7/p/3599601.html
Copyright © 2011-2022 走看看