listview适配器的编写

listview适配器arrayAdapter

public class Myadapter extends BaseAdapter {
/*
    构造器可以有多个
    */
    private int images[];
    private String names[],signs[];

    public Myadapter(int images[],String names[],String signs[]){
        this.names=names;
        this.images=images;
        this.signs=signs;
    }

    @Override
    public int getCount() {
        // TODO Auto-generated method stub
        return names.length;
    }

    @Override
    public Object getItem(int arg0) {
        // TODO Auto-generated method stub
        return names[arg0];
    }

    @Override
    public long getItemId(int arg0) {
        // TODO Auto-generated method stub
        return arg0;
    }

    @Override
    public View getView(int arg0, View arg1, ViewGroup arg2) {
        // TODO Auto-generated method stub
        arg1=LayoutInflater.from(context).inflate(R.layout.list, null) ;
        TextView name,sign;
        ImageView image;
        name=(TextView)arg1.findViewById(R.id.name);
        sign=(TextView)arg1.findViewById(R.id.sign);
        image=(ImageView)arg1.findViewById(R.id.image);
        name.setText(names[arg0]);
        sign.setText(signs[arg0]);
        image.setImageResource(images[arg0]);


        return arg1;
    }

}

构造完成只需2在其他地方调用即可
xml文件代码如下

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
     >
    <ImageView 
        android:id="@+id/image"
        android:layout_height="wrap_content"
        android:layout_width="wrap_content"
        android:src="@drawable/p_1"
        />
    <TextView 
        android:id="@+id/name"
        android:layout_height="30dp"
        android:layout_width="match_parent"
        android:text="如花"
        android:layout_toRightOf="@+id/image"
        android:gravity="center_vertical"

        />
    <TextView 
        android:id="@+id/sign"
        android:layout_height="30dp"
        android:layout_width="wrap_content"
        android:text="......."
        android:textSize="10dp"
        android:gravity="center_vertical"
        android:textColor="#3299cc"
        android:layout_below="@+id/name"
        android:layout_toRightOf="@+id/image"
        />


</RelativeLayout>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 在Android中,适配器是用于将数据绑定到视图的重要组件。以下是一些常见的Android适配器类型: 1. ArrayAdapter:用于将数组或列表数据绑定到ListView、GridView等视图。 2. BaseAdapter:是所有适配器的基类。通过扩展BaseAdapter类,可以创建自定义适配器。 3. CursorAdapter:用于将数据库中的数据绑定到视图,如ListView、GridView等。 4. SimpleCursorAdapter:是CursorAdapter的子类,用于将数据库中的数据绑定到ListView等视图。 5. RecyclerView.Adapter:用于将数据绑定到RecyclerView视图。 6. PagerAdapter:用于在ViewPager中管理多个视图的适配器。 7. FragmentPagerAdapter:是PagerAdapter的子类,用于在ViewPager中管理多个Fragment的适配器。 8. FragmentStatePagerAdapter:是PagerAdapter的另一个子类,用于在ViewPager中管理大量Fragment的适配器。 这些适配器类型可以根据不同的需求选择使用。 ### 回答2: Android适配器是一种用于数据的转换和展示的重要组件。根据功能和用途的不同,Android适配器可以分为以下几种类型: 1. ArrayAdapter:这是最常见的适配器类型之一,用于将数据绑定到ListView等控件上。它可以将数组或集合中的数据显示在列表中,并提供默认的布局。 2. BaseAdapter:这是一个抽象适配器类,继承它可以自定义适配器。BaseAdapter提供了对ListView等控件的底层操作,如数据绑定和视图重用。开发者可以根据自己的需求,实现自定义的适配器。 3. SimpleAdapter:SimpleAdapter是ArrayAdapter的一个子类,根据传入的数据和布局资源文件,将数据显示在ListView等控件上。和ArrayAdapter不同的是,SimpleAdapter可以将数据以键值对的形式进行绑定,并使用自定义的布局资源。 4. CursorAdapter:这种适配器用于连接数据库中的数据与视图,常用于将查询结果显示在ListView或GridView等控件上。CursorAdapter可以自动对数据库中的数据进行操作,并反映在UI上。 5. RecyclerViewAdapter:这是Android新推出的适配器类型,用于配合RecyclerView控件使用。RecyclerViewAdapter是RecyclerView的适配器,负责将数据绑定到RecyclerView上,并根据数据的变化更新视图。 总之,Android适配器类型繁多,开发者可以根据需求选择适合的适配器来操作数据,并将其展示在对应的UI控件上。适配器起到了连接数据和UI的桥梁作用,是Android开发中不可或缺的组件之一。 ### 回答3: 在Android开发中,适配器是用来将数据与界面进行绑定的桥梁。它负责将数据提供给视图,并将用户的操作反馈给相应的数据。Android中有多种适配器的类型,下面是一些常见的适配器种类: 1. ArrayAdapter: 这是最基本的适配器之一,用于将数据适配ListView、Spinner等视图中。它接收一个数组或List作为数据源,并将每个元素呈现在视图中。 2. BaseAdapter: 这是一个抽象适配器类,可以自定义实现。它提供了一些基本方法,如获取数据源大小、获取指定位置的数据等,方便使用者根据自己的需求进行扩展。 3. RecyclerView.Adapter: 这是在Android支持库中引入的适配器,用于将数据适配到RecyclerView中。相较于ListView,RecyclerView具有更强大的布局和动画效果支持。 4. SimpleCursorAdapter: 这个适配器用于将数据适配到Cursor对象中,通常用于与数据库操作相关的界面。它可以将Cursor中的数据显示在ListView等视图中。 除了以上几种基本适配器,还有一些特殊用途的适配器,如SpinnerAdapter用于将数据适配到Spinner中,CursorAdapter用于将数据适配ListView中的Cursor等。 值得一提的是,为了提高性能和良好的用户体验,通常建议使用数据绑定库,如DataBinding或ViewBinding,来自动生成适配器代码,简化开发过程。这些库可以根据数据源自动创建适配器,并处理视图与数据的更新和绑定,减少手动编写适配器的工作量。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值