如何使用 Adapter

Adapter 是listView和数据源之间的中间人



 

最简单的方法, 最慢最不实用:

public View getView(int pos, View convertView, ViewGroup parent) {
View item = mInflater.inflate(R.layout.list_item, null);
((TextView) item.findViewById(R.id.text)).setText(DATA[pos]);
((ImageView) item.findViewButId(R.id.icon))
.setImageBitmap((pos & 1) == 1 ? mIcon1 : mIcon2);
return item;
}

 

利用 convertView 回收视图, 效率提高 200%:

public View getView(int pos, View convertView, 
        ViewGroup parent){
    if (convertView == null) {
        convertView = mInflater.inflate(
                R.layout.list_item, null);
    }
    ((TextView) convertView.findViewById(R.id.text)).
            setText(DATA[pos]);
    ((ImageView) convertView.findViewButId(R.id.icon)).
            setImageBitmap((pos & 1) == 1 ? mIcon1 : mIcon2);

    return convertView;
}

 

使用 ViewHolder 模式, 效率再提高 50%:

static class ViewHolder {
    TextView text;
    ImageView icon;
}



public View getView(int pos, View convertView, ViewGroup parent){
    ViewHolder holder;
    if (convertView == null) {
        convertView = mInflater.inflate(R.layout.list_item, null);
        holder = new ViewHolder(); 
        holder.text = (TextView) convertView.findViewById(
                R.id.text));
        holder.icon = (ImageView) convertView.findViewButId(
                R.id.icon));
        convertView.setTag(holder);
    } else {
        holder = (ViewHolder) convertView.getTag();
    } 
    holder.text.setText(DATA[pos]);
    holder.icon.setImageBitmap((pos & 1) == 1 ? mIcon1 : mIcon2);
 

 

PINN疲劳寿命预测优化 本项目基于物理信息神经网络(PINN)构建材料疲劳寿命预测模型,通过融合Paris裂纹扩展方程与实验数据,实现裂纹扩展行为的精准预测。核心方法包括:1)将Paris方程作为物理约束嵌入神经网络训练;2)生成含噪声的模拟数据并进行归一化处理;3)采用PINN-GA联合优化框架,以裂纹扩展速率最小化为目标优化材料参数。该方案通过物理规律与数据驱动的结合,显著提升预测模型的泛化能力,为工程材料寿命评估提供新思路。 阅读详情

相关推荐

《点亮创新灯塔!AI应用架构师与中小学初等教育AI智能体,共筑智能化教育辅助创新灯塔》

中小学AI智能体,是基于AI技术,能感知教育场景、理解教育规律、辅助教师教学和学生学习的智能系统。做老师“做不了”的事:比如5分钟批改45本作业,精准统计每个学生的易错点;做老师“做不好”的事:比如根据学生的学习风格(视觉/听觉/动觉)推荐个性化内容;绝不做老师“该做的事”:比如情感交流、价值观引导、创意教学设计——这些“人的温度”,AI永远无法替代。我是林宇,资深AI应用架构师,专注教育AI领域8年,参与过10多个中小学AI智能体项目,曾为北京、上海、深圳等城市的100多所学校提供AI教育解决方案。

Java大师兄的博客 433

Adapter使用(一)

第一种方式: 1.创建数据源。 2.使用adapter,将数据源和layout进行绑定。 3.通过ListView设置adapter,进行界面展示。 String strs[] = {"张三", "李四", "王五", "赵六"}; ArrayAdapter<String> adapter = new Arrayadapter(this, R.layout.support_simple_spinner_dropdown_item, strs); ListView listView = findV

weixin_42199986的博客 904

PostgreSQL+PostGIS空间数据入库实战:从矢量栅格到GeoServer发布全流程

本文详细介绍了将矢量与栅格空间数据导入PostgreSQL并利用PostGIS扩展进行管理的完整流程。内容涵盖环境搭建、使用shp2pgsql和raster2pgsql工具进行数据入库、基础空间查询验证,以及最终通过GeoServer发布为地图服务的实战步骤,为构建空间数据平台提供清晰指引。

weixin_29268267的博客 289

Adapter的作用及用法

首先,我们常用的Adapter有四种,分别是BaseAdapter、SimpleAdapter、ArrayAdapter、SimpleCursorAdapter四种。              BaseAdapter:基础数据适配器,它的主要用途是将一组数据传到例如ListView等UI显示组件,继承自接口类Adapter,由于是基础类型,所以自由度高, 可以修改的地方多。

结尾自在人心 1万+

Linux与Windows双系统,安装完linux后无法通过grub进入Windows的解决方法

先装Windows 10,Windows可正常启动,再装Kali,Kali提示装grub后照装。然而装完后重启发现无Windows选项。

sakurashockwave的博客 6454

RAG面试内容整理-8. 文档分块策略(滑动窗口、语义切分)

RAG系统通常面对长文档或整篇知识库资料的检索需求,但大模型一次处理的文本长度有限,向量索引也需固定大小的文本片段。因此,将长文档拆分成合适片段是必不可少的步骤,被称为文档分块(chunking)策略。

不务正业的猿 690

Adapter介绍及ArrayAdapter的简单使用

简介 适配器(adapter)在android中是数据和视图(View)之间的一个桥梁,通过适配器以便于数据在view视图上显示。现在主要对ArrayAdapter、SimpleAdapter、BaseAdapter进行简单的演示。 Arraydapter(数组适配器) 使用时具有局限性,默认情况下不支持imageview等非文本以外的内容,如果要显示的话需要重写getView方法。 基本使用: ...

Dimanche的博客 2万+

一文搞懂YOLO各版本差异:v5易用、v8多任务、v10低延迟,该怎么选?

YOLOv5的“易用”是为了降低入门门槛,适合新手启蒙和旧项目维护;YOLOv8的“多任务”是为了满足工业需求,成为目前的主流版本;YOLOv10的“低延迟”是为了适配边缘计算,代表未来的发展趋势。选型的核心不是“选最新的”,而是“选最适合自己场景的”。记住选型口诀,按场景对号入座,就能避开99%的坑。希望这篇文章能帮你彻底搞懂各版本差异,选对属于自己的YOLO版本!

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 1169

android用户界面编程技巧——如何使用Adapter

首先我要说明的是这里“android用户编程技巧”系列的文章中所涉及的技术技巧以及讲述方式不是我本人原创。这些技巧是来自2009年google开发者日 (Google Developer Day 2009)上,google公司一位负负责android系统framework层和浏览器开发的一位工程师(很抱歉没有能记住她的名字)的技巧 ,因为是在开发者大会上演讲是分享的,所以很多人称之为官方的技巧。 ...

张瑞JerrySher的博客 355

灰色预测GM(1,n)模型_python

灰色系统理论及其应用系列博文: 一、灰色关联度分析法(GRA)_python 二、灰色预测模型GM(1,1) 文章目录一、GM(1,n)算法二、示例2.1 数据:2.2 代码_使用GM(1,n)城市用水总量2.3 结果分析 一、GM(1,n)算法 二、示例 注:数据均来自论文《基于灰色系统理论的贵阳市城市用水总量预测》 2.1 数据: data.csv 年份,城区人口,建成区面积,供水总量,用水人口,人口综合用水指标,城市用水总量 2002, 191.85, 98.00, 26396.00,

qq_34229228的博客 1万+

【人工智能 Open AI】程序员怎样提升研发效率?从技术、业务、项目管理等等多个方面来阐述。

程序员要想提升研发效率,需要从技术、业务、项目管理等多方面着手,多靠工具配合实践实现,从而提升研发效率。

AI天才研究院 5526

Android之Adapter用法总结

1.概念         Adapter是连接后端数据和前端显示的适配器接口,是数据和UI(View)之间一个重要的纽带。在常见的View(ListView,GridView)等地方都需要用到Adapter。如下图直观的表达了Data、Adapter、View三者的关系: Android中所有的Adapter一览:         由图可以看到在Android中与Adapter有关的

专注Android开发 531

CNN+LSTM+Attention+DNN模型实战:pytorch搭建CNN+LSTM+Attention+DNN行车速度预测

CNN+LSTM+Attention+DNN模型实战:pytorch搭建CNN+LSTM+Attention+DNN行车速度预测

6045

android中的Adapter使用

注:下面的内容都是我从诸位大神的博客中整理出来的,用一篇文章记录一下,作为笔记。在此先表示一下敬佩和感谢吧 参考过的博客: http://www.cnblogs.com/devinzhang/archive/2012/01/20/2328334.html Adapter是连接后台数据和前台显示的适配器接口,一些常见的View子类,例如ListView、GridView之类的,都需要使用A

u010980545的专栏 4070

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

ListView和Adapter的配合使用以及Adapter的重写

ListView和Adapter的使用 首先介绍一下ListView是Android开发过程中较为常见的组件之一,它将数据以列表的形式展现出来。一般而言,一个ListView由以下三个元素组成: 1、View,用于展示列表,通常是一个xml所指定的。大家都知道Android的界面基本上是由xml文件负责完成的,所以ListView的界面也理所应当的使用了x...

dieji5512的博客 316

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

Adapter的使用

Adapter的使用   步骤: ListView:列表控件  只具有展示数据的作用,数据处理由Adapter完成 1、在xml布局文件中 声明 2、在activity中找控件 3、初始化数据源(一个集合) 4、处理数据 (Adapter) 5、显示数据   Activity代码:   public class MainActivity extendsAppCompatAc

qq_38205703的博客 337

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

ListView,adapter使用总结

学习android也有一段时间了,老是想要通过总结的形式形成文档保存起来,但是一直都没能实现起来,一是本人挺懒的,有严重的拖延症,而是确实没什么时间来弄,每天回到宿舍已经是九点多了,宿舍人多,洗个澡,洗一下衣服,已经是十一点多了,不想明天的状态又是顶着两个黑眼圈来学习。所以,唉,还是自己的问题! 写总结,我越来越觉的很有必要,俗话说好记性不如烂笔头,你记性再好都会忘光光的,所以记录总结是最好的方式了

Jason_nTom的专栏 2891

不用再写RecyclerView的Adapter了,一个Adapter搞定

数据model与ViewHolder直接绑定,再也不用写Adapter了

boybeak的专栏 3719

嵌套的小Adapter

package com.bawai.dianshang.adapter; import android.content.Context; import android.support.annotation.NonNull; import android.support.v7.widget.RecyclerView; import android.view.LayoutInflater; impor...

wang21hua的博客 234

Kotlin在Adapter中使用ViewModel

Activity通常有一个ViewModel,在使用RecyclerView的时候要写一个Adapter,在Adapter里也要处理一些数据。但是(好像)在Adapter类中没有直接获取ViewModel的办法,所以这里提供一个参考。 首先看到ViewModelProvider的参数类型是一个ViewModelStoreOwner,如果是在Activity中,我们直接传入this就可以了。但是在Adapter中this并不是一个Activity,所以类型不匹配。 首先在Adapter类中添加一个静态变量:

weixin_51242840的博客 4336

Adapter基本使用

1. Adapter基本介绍 Android是完全遵循MVC模式设计的框架,Activity是Controller,layout是View。因为layout五花八门,很多数据都不能直接绑定上去,所以Android引入了Adapter这个机制作为复杂数据的展示的转换载体,所以各种Adapter只不过是转换的方式和能力不一样而已 图解: Model:通常可以理解为数据,负责执行程序的核心运算与判断...

zhewen的博客 1232

Adapter

Adapter

mobi的博客 1126

Android Adapter使用总结

1.概念         Adapter是连接后端数据和前端显示的适配器接口,是数据和UI(View)之间一个重要的纽带。在常见的View(ListView,GridView)等地方都需要用到Adapter。如下图直观的表达了Data、Adapter、View三者的关系: Android中所有的Adapter一览:         由图可以看到在Android中与Adapter有关的

JAVAweb学习 481

Adapter基础讲解

语文

qq_25502783的博客 769

spinner中Adapter的两种使用方式

Adapter的使用 Android 中adapter的两种使用方式 ArrayAdapter和自定义adapter 实现的目标 **Android studio 实现下拉列表 如图: 点击图一小三角后有如图二的下拉列表 方法一:使用ArrayAdapter ArrayAdapter是Android studio中自带的基础适配器,使用还是比较方便的,我们来看看怎么使用。 1:声明适配器 private ArrayAdapter arrayAdapter; 2:创建适配器 arrayAdapter=ne

weixin_44260740的博客 3058

android adapter

Adapter是将数据绑定到UI界面上的桥接类。Adapter负责创建显示每个项目的子View和提供对下层数据的访问。   支持Adapter绑定的UI控件必须扩展AdapterView抽象类。创建自己的继承自AdapterView的控件和创建新的Adapter类来绑定它们是可能的。   一些Android提供的Adapter介绍   在多数情况下,你不需要白手

倾听雨落 1333
上一篇: JDK 配置
下一篇: 更有效率的使用Bitmap
justdojava
博客等级 码龄17年 1粉丝 10原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值