【Android】两种适配器的使用

ArrayAdapter适配器:
(1)用于显示基本的文字内容
(2)基本使用过程:新建适配器---创建或加载数据源---适配器加载数据源---视图加载适配器
ArrayAdapter(上下文,当前ListView加载的每一个列表项所对应的布局文件,数据源)
(ArrayAdapter)数据适配器的实现过程:
1.新建适配器

arr_adapter=new ArrayAdapter<String>(context,布局文件,数据源)

arr_adapter=new ArrayAdapter<String>(上下文(this),当前ListView加载的每一个列表项所对应的布局文件(android.R.layout.simple_list_item_1),数据源(String[]arr_data={"1","2","3","4"}));
2.添加数据源到适配器(上一步已包含)
3.视图(ListView)加载适配器
listView.setAdapter(arr_adapter);

使用SimpleAdapter

private ListView listView;

private SimpleAdapter simple_adapter;

//声明适配器

private List<Map<String,
Object>> dataList;
dataList=new ArrayList<Map<String,Object>>();
//1、新建一个数据适配器—SimpleAdapter();

//2、适配器加载数据源
simple_adapter = new SimpleAdapter(this,getData()*获取数据源*,R.layout.布局文件名,new
String[]{"键值名1","键值名2"},new int[]{R.id.控件名1,R.id.控件名2});

//3、视图(ListView)加载适配器
listView.setAdapter(simple_adapter);

// 生成数据源
private List<Map<String, Object>> getData() {
for(int i=0;i<20;i++){
Map<String,Object> map=new HashMap<String,Object>();
map.put("键值名",R.drawable.ic_launcher);
map.put("键值名","测试文本"+i);
dataList.add(map);
}
return dataList;
}

注意:map.put("pic",R.drawable.ic_launcher);map.put("text","测试文本"+i);这里的pic和text与new int[] { R.id.pic,R.id.text}无关(只是同名罢了),是关联于new String[] {"pic", "text"}中的名字。

时间: 2024-11-08 22:21:11

【Android】两种适配器的使用的相关文章

Android-ListView两种适配器以及事件监听

Android-ListView两种适配器 ListView在安卓App中非常常见,几乎每一个App都会有涉及,比如QQ消息列表,或者是 通讯录还有就是酷我音乐的歌曲列表都是ListView.继承ListView.所以非常重要. 这就是ListView ArrayAdapter 数据源是数据或者集合,比较简单 布局文件 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:androi

Android两种旋转Bitmap方法比较

方法1. 利用Bitmap.createBitmap Bitmap adjustPhotoRotation(Bitmap bm, final int orientationDegree) { Matrix m = new Matrix(); m.setRotate(orientationDegree, ( float ) bm.getWidth() / 2, ( float ) bm.getHeight() / 2); try { Bitmap bm1 = Bitmap.createBitmap

Android 两种注册、发送广播的区别

前言:前面文章记录了Service的使用,这次来记录另一个四个组件之一的BroadcastReceiver.主要介绍两种发送和注册广播的区别. BroadcastReceiver广播接收者用于接收系统或其他程序(包括自己程序)发送的广播. 一.注册广播 在android中,我们如果想接收到广播信息,必须自定义我们的广播接收者.要写一个类来继承BroadcastReceiver,并且重写其onReceive()方法,实现接收到特定广播所要做的事情. 这是一个自定义的广播接收者: public cl

Android两种为ViewPager+Fragment添加Tab的方式

在Android开发中ViewPager的使用是非常广泛的,而它不仅仅能够实现简单的开始引导页,还可以结合Fragment并添加Tab作为选项卡或为显示大批量页面实现强大的顺畅滑动 下面介绍两种为ViewPager+Fragment添加Tab的方式: 第一种: 在MainActivity布局中定义一个ViewPager 在MainActivity中声明ViewPager并实现它的Adapter继承自FragmentPagerAdapter 首先需要通过重写有参的构造方法来获取FragmentMa

(转载)Android两种Tab分页的方式:TabActivity和ActivityGroup以及Android项目几种常见的应用架构

在Android里面Tab分页,常用的方法有两种: 一.TabActivity和TabHost的结合 1.主类继承TabActivity public class Tagpage extends TabActivity 2.获取当前TabHost对象 final TabHost tabHost = getTabHost(); 3.添加Tab分页标签,这里就是关键,把每个分页面链接成Activity.页面的跳转,即是Activity的跳转. tabHost.addTab(tabHost.newTa

android 两种定时器的实现

在Android上常用的定时器有两种,一种是Java.util.Timer,一种就是系统的AlarmService了. 实验1:使用Java.util.Timer. 在onStart()创创建Timer,每5秒更新一次计数器,并启动. Java代码 ? 1 2 3 4 5 6 7 8 mTimer = new Timer();        mTimer.schedule(new TimerTask() {                        @Override            

Android 两种方式实现类似水波扩散效果

原文链接 https://mp.weixin.qq.com/s/M19tp_ShOO6esKdozi7Nlg 两种方式实现类似水波扩散效果,先上图为敬 自定义view实现 动画实现 自定义view实现 思路分析:通过canvas画圆,每次改变圆半径和透明度,当半径达到一定程度,再次从中心开始绘圆,达到不同层级的效果,通过不断绘制达到view扩散效果 private Paint centerPaint; //中心圆paint private int radius = 100; //中心圆半径 pr

Android 两种制作圆形/圆角图片的方法

前言: 目前网上有很多圆角图片的实例,Github上也有一些成熟的项目.之前做项目,为了稳定高效都是选用Github上的项目直接用.但这种结束也是Android开发必备技能 ,所以今天就来简单研究一下该技术,分享给大家. 预备知识: Xfermode介绍: 下面是Android ApiDemo里的"Xfermodes"实例,效果图. Xfermode有三个子类,结构如下: public class Xfermode extends Object java.lang.Object ? a

Android 两种方式播放视频

主MainActivity的布局配置文件 这是activity_main.xml.主要出现两个按钮,按钮一通过mediaplayer播放,按钮二通过videoview播放 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"     xmlns:tools="http://schemas.android.com/tools"     android:layout_wid