【Android】listView动态处理item

android智能电视开发,ListView焦点事件,以及条目item焦点事件,改变背景色。 listView以及其他控件焦点事件 **android:focusable="true"** 在布局文件中为listview添加,或者在java代码中setFocusable(true),使得view能够获取焦点。为listview视图添加焦点监控事件即可。 listview.setOnFocusChangeListener(new View.OnFocusChangeListener(... 阅读详情
背景:
主界面有listView ,id是List_main,adapter是直接new出来的


-----------------------我是分割线---------------------------------
由于listview在中间,我想让三个item占满他,而listview的大小也是根据屏幕分辨率调的,我的办法是用inflate拿到adapter布局里面的高,然后用getLayoutParams().height=XX来改,后来我发现,值拿到了,也改了,log出来的值也是改过的值,但是界面上的高就是没变。


后来在某大神的博客找到方法


adapter这个类每在新建item的时候都会调用一次getView方法,我写了一个adapter继承自SimpleAdapter,然后再new我的这个adapter,在参数里面加一个值,给getview用
代码如下


adapter

package com.example.android_class;

import java.util.List;
import java.util.Map;
import com.example.android_class.MainActivity;
import android.content.Context;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.SimpleAdapter;

public class MyAdapter extends SimpleAdapter {
     int myh;
	public MyAdapter(Context context, List<? extends Map<String, ?>> data,
			int resource, String[] from, int[] to,int myh) {
		
		super(context, data, resource, from, to);
		this.myh=myh;


	}
	public View getView(int position, View convertView, ViewGroup parent) {
		 
		View v = super.getView(position, convertView, parent);
		v.getLayoutParams().height=myh;
		 
		return v;
	}

}

activity

private void init_setAdapter() {
		
		List<Map<String, Object>> l = new ArrayList<Map<String, Object>>();
		
		Map<String, Object> m = new HashMap<String, Object>();
		m.put("main_adapter_img", R.drawable.week);
		m.put("main_adapter_textView", "本周数据");
		l.add(m);
		m = new HashMap<String, Object>();
		m.put("main_adapter_img", R.drawable.month);
		m.put("main_adapter_textView", "本月数据");
		l.add(m);
		m = new HashMap<String, Object>();
		m.put("main_adapter_img", R.drawable.year);
		m.put("main_adapter_textView", "本年数据");
		l.add(m);
		
		MyAdapter s = new MyAdapter(this,l,R.layout.activity_main_adapter,new String[]{"main_adapter_img","main_adapter_textView"},new int[]{R.id.main_adapter_img,R.id.main_adapter_textView},list_main.getLayoutParams().height/3);
		list_main.setAdapter(s);
		
	}

还有一个问题就是像素和dp的转换问题,以后再说。



禁止转载

Android listView的展开与收起实现折叠,及动态设置子ListView的高度 问题重现最近在公司项目中做一个商品展示的功能,要求在分类后 ,对每个类进行展开、收起操作。想法就是在ListView中嵌套一个ListView,通过动态的显示和隐藏ListView,实现展开和收起操作在同一个页面,实现折叠效果。难点:解决ListView的动态设置问题.先看效果图: 解决思路外面一层是一个ListView,在填充Item的时候,在Item布局设置为LinearLayout,在下面设 阅读详情

相关推荐

仿QQ消息列表item横向滑动删除ListView中item侧滑删除

在最近的项目中,我的ListView中item选项是长按删除的效果(Android的通常做法长按或点击),老板觉得这个效果不好,提出要求做类似QQ消息列表横向滑动时删除消息的效果。 本博文实现思路是在滑动item的过程中修改item的leftMargin实现的。

JunkChen 1万+

AndroidStudio中ListView的使用方法之SimpleAdapter适配器

AndroidStudio中ListView的四种使用方法之第三种SimpleAdapter适配器。 首先我们先了解一下SimpleAdapter类。 SimpleAdapter类是用来处理ListView显示数据的,这个类可以将任何自定义的xml布局文件作为列表项来使用。 SimpleAdapter构造方法的原型为: public SimpleAdapter ( Context context,List<?extends Map<String,?>> data,int r

weixin_49118013的博客 1万+

【Android】UI组件之ListView与BaseAdapter、SimpleAdapter

UI组件之ListView与BaseAdapter、SimpleAdapter

weixin_51293984的博客 237

Android ListView基础篇

本系列文章将为大家总结如何快速使用ListView以及做到高效的ListView,本篇博文介绍ListView的基本使用 ListView&Adapter ListView是Android中用来显示一个列表的数据的控件,几乎大部分的应用都会用到,它以列表的形式展示具体内容,并且能够根据数据的长度自适应显示,ListView继承至AdapterView,它的展示是要通过一个adapter来完成,adapter里面装载数据,ListView再通过adapter的数据来进行每一个Item的展示。如下图: Ad

IT_ZJYANG的博客 2315

Android中实现可拖拽Item的ListView交互设计

在Android开发中,Adapter是连接数据与UI的关键桥梁。对于ListView控件而言,Adapter不仅负责将数据绑定到每个Item上,还承担着处理复杂交互行为的职责。在实现拖拽功能时,Adapter的结构和逻辑需要进行专门的定制与优化。本章将围绕自定义Adapter实现Item拖拽功能,从Adapter基础、拖拽逻辑实现、接口封装到最终实战案例,逐步展开深入剖析。为了实现可复用的拖拽逻辑,我们可以将拖拽事件的处理封装到Adapter内部,并通过接口回调机制通知外部逻辑。

weixin_28939623的博客 1025

江科大笔记—OLED调试工具

OLED介绍及调试工具

m0_62005595的博客 663

android ListView使用的三种方法汇总(通过继承BaseAdapter,使用SimpleAdapter和SimpleCursorAdapter)

android中使用ListView显示列表,共有三种实现方式: 分别是通过继承baseAdapter,直接使用simpleAdapter和simplecursoradapter三种方式 下面我们直接通过代码来看一下实现的过程,代码中有详细的注释,所以,不再详细介绍三种方法的实现方式、 在实现三种方式之前,先定义一个xml文件来显示每一个item     andro

MFSGSS3432的专栏 5754

别再死记硬背Modbus报文了!用Python+Modbus Poll手把手教你调试工业设备

本文详细介绍了如何利用Python和Modbus Poll工具高效调试工业设备通信。通过实战案例和代码示例,帮助读者快速掌握Modbus通信协议的核心配置、数据监控技巧及Python自动化脚本编写,解决工业设备调试中的常见问题,提升工作效率。

weixin_42520780的博客 344

Android自定义SimpleAdapter适配器

一.首先创建一个MyAdapter类继承SimpleAdapter 造福伸手党,直接贴代码(我们坚决不做抄袭者,我们只是照搬工),拿走不谢: package tool; import android.content.Context; import android.graphics.Color; import android.view.View; import android.view.ViewG...

Rruzhiru的博客 1082

Ansys Zemax与Speos协同设计:HUD系统从光学优化到驾驶模拟的全流程解析

本文详细解析了如何利用Ansys Zemax与Speos这对“黄金搭档”进行HUD系统的协同设计。流程始于Zemax进行核心光学架构与像差优化,奠定性能基础;随后将设计无缝导入Speos,通过HUD光学分析模块进行量化验证;最终在虚拟驾驶环境中进行沉浸式模拟,评估实际视觉体验与系统集成效果,实现从光学优化到驾驶模拟的全流程闭环。

weixin_29201933的博客 274

学术规范与论文写作(雨课堂)研究生 全部答案

1:如何造就优秀的学术论文 论文语法判断题 :全部是错的 2:如何撰写学术论文 3: SCI论文写作经验分享 4:论文写作与投稿技巧 5:学术伦理道德 答案仅供参考,研究生生活不易,大家如果有时间的话,还是可以学习学习的,毕竟老师讲的不错。加油,希望读研的每一个人都能顺利毕业! ...

Always-Learning 13万+

Android中动态计算ListView高度方法(适用于ScrollView嵌套)

在Android开发中,有时候会遇到几个ListView同时显示在布局上,并且能够同时滚动的需求,大家都知道用ScrollView嵌套就好了,但嵌套完成后就会发现ListView只能那个显示一个item,这时候就需要动态计算ListView的高度,代码如下:private void setListViewHeightBasedOnChildren(ListView listView) {

William_9109的博客 3537

NV 英伟达2022数字芯片笔试题

作者:数字IC打工人 链接:【开卷】第27期 NV 英伟达2022数字芯片笔试题_笔经面经_牛客网 来源:牛客网 1、Single Choice: Given thefollowing FIFO and rules, how deep does the FIFO need to be to preventunderflow or overflow? RULES: clk_A=25MHz; clk_B=100MHz; en_B is periodically asserted: period.

weixin_44072819的博客 6391

安卓Android开发,左边listView右边Fragment切换页面

安卓Android开发,左边listView右边Fragment切换页面

m0_63222566的博客 2263

systrace分析 之 问题初步定位

如下surfaceflinger空缺点,上面对应的bufferTX 中有buffer,但VSYNC-SF 过来后,SurfaceFlinger却没有去取,检查测试app “android.settings”, 也没有GPU completion 时间长的问题,所以该部分可以请SurfaceFlinger的owner 进一步确认为何不取buffer。. GPU拿的是acquireFence HWC拿的是releaseFence, GPU是绘图,HWC是合成显示,这两个是互相等待的关系,

yangzex的专栏 3197

单视图几何Vanish Point(消失点/灭点)计算方法——Robert_T_Collins(罗伯特·柯林斯)算法

单视图几何Vanish Point(消失点/灭点)计算方法——Robert_T_Collins(罗伯特·柯林斯)算法

beyond951的博客 7334

android listview 选择多个item,Android ListView存在多个item样式的处理方法

在项目开发的时候,相信大家可能会遇到一个ListView中出现多个不同的布局,遇到这个问题我的大致思路就是创建多个viewholder,在getViewType的时候设置不同位置的item用不同的viewholder,好了不废话那么多直接上代码:packagecom.sunny.youdao;importjava.util.ArrayList;importjava.util.List;imp...

weixin_42370743的博客 418

Autosar软件组件分析及ARXML文件分析

Autosar软件组件分析及ARXML文件分析

专注汽车软件开发、AutoSAR、车载以太网、SOA、EE架构。 3604

Android 彻底征服 ListView 一 (实用篇)

ListView使用技巧对于Android开发,相信ListView这个控件大家一定不会陌生,它的重要性不言而喻,它的功能纷繁复杂,在项目中的表现形式灵活多变,要想得心应手的使用不并容易,今天带领大家一起领略ListView的风采.1.使用ViewHolder @Override public View getView(int i, View view, ViewGroup viewGrou

姚佳伟 5710

OV9734 DATASHEET,完整规格书

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

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

监听listview中item有控件点击事件的变化,更新listview

记录一下,给自己提个醒,倘若listview的item中有控件 如上图所示,图中的删除操作(即垃圾箱那个图标)因为监听事件是在adapter中写的,如果想用adapter.notifyDataSetChanged()方法进行更新,是不行的,因为在自定义的adapter中传入不进去本身对象的(也可能是我不知道有相关的方法),所以我们可以在主页面中设置一个Handler来进行更新操作

Anny_Lin的博客 2215

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

Android学习(42) -- 自定义控件(6)下拉选择实现( 动态ListView + popupWindow)

要实现的效果图 下拉列表使用的是  动态ListView + popupWindow实现   1、设置布局 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" andro

idiandi的博客 1468

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

android listview 动态edittext,解决ListView中包含EditText数据混乱原理

要求:屏幕中显示一个listview,其中每一个item都有一个editText,在任一editText上输入内容,快速上下滑动,保证数据不混乱。这是一道面试题,初看没什么,应该会很简单,但实际解决起来没那么简单,先上解决代码。packagecom.zhiren.mytestok;importandroid.content.Context;importandroid.text.Editabl...

weixin_29733427的博客 898

Android群英传笔记-ListView使用技巧

listview使用技巧小技巧使用viewHolder提高效率item间设置分界线隐藏滚动条取消item点击效果设置指定item动态修改listview处理空listViewlistView滑动监听listView常用扩展具有弹性的listView自动显示和隐藏布局的lsitview动态改变listView 小技巧 虽然现在recycleview基本取代了listView,但是一些属性还是相同的,可以使用recycleView时借鉴。 关于Adapter,可以使用github上开源的BaseQuickAda

qq_46577594的博客 563

安卓学习之使用listview设置adapter时,解决动态显示图片的问题

安卓学习之使用listview设置adapter时,解决动态显示图片的问题

是我是我都是我的博客 2673

《Android群英传》阅读笔记——第四章:ListView使用技巧

昨天把自定义View看完了,真是受益颇多啊,今天又来看ListView了,我们都知道现在已经出了RecyclerView不可谓不强大,但是我们在一般情况下,用ListView就够了,除非有一些特殊的需求,所以ListView的地位还是挺稳的,这就促使我们必须必的将它掌握,虽然在这之前我用ListView用的也挺多的,但是就是差一个总结…

_LINXIONG的博客 1198

Android 使用NineOldAndroids实现绚丽的ListView左右滑动删除Item效果

出自xiaanming的博客(http://blog.youkuaiyun.com/xiaanming/article/details/18311877) 今天还是给大家带来自定义控件的编写,自定义一个ListView的左右滑动删除Item的效果,这个效果之前已经实现过了,有兴趣的可以看下Android 使用Scroller实现绚丽的ListView左右滑动删除Item效果,之前使用的是

Qiqihar的专栏 1073
上一篇: 【Android】数据库 sqLite
下一篇: 【Android】获取屏幕分辨率和顶栏高度全屏和横屏
Fried_potatoes
博客等级 码龄12年 5粉丝 38原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值