Android编程实现Listview点击展开和隐藏的方法
本文实例讲述了Android编程实现Listview点击展开和隐藏的方法。分享给大家供大家参考,具体如下:
代码较多,所以找关键点大家贴出来,相信大家看了之后很容易就明白的,
在listview的activity中
List<Map<String, Object>> listItems = new ArrayList<Map<String, Object>>() myAdapter = new MyAdapter(getApplicationContext(), listItems); listView.setAdapter(myAdapter); listView.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) { //点击的时候设置选中的编号,在自定义adapter中设置属性selectItem myAdapter.setSelectItem(arg2); //刷新listView myAdapter.notifyDataSetInvalidated(); } });
在自定义的myAdapter的getView中,我的需要隐藏和展示的是个TableLayout默认是隐藏,定义属性int型selectItem和sign默认值均为-1,
TableLayout info = (TableLayout)convertView.findViewById(R.id.tableLayout1); if(position == selectItem){//被选中的元素 if(sign == selectItem){//再次选中的时候会隐藏,并初始化标记位置 info.setVisibility(View.GONE); //没有被选中设置透明色 convertView.setBackgroundColor(Color.parseColor("#00000000")); sign = -1; }else{//选中的时候会展示,并标记此位置 info.setVisibility(View.VISIBLE); //被选中设置背景颜色 convertView.setBackgroundColor(Color.parseColor("#B0E2FF")); sign = selectItem; } }else {//未被选中的元素 info.setVisibility(View.GONE); convertView.setBackgroundColor(Color.parseColor("#00000000")); }
可以实现点击展示,再次点击隐藏,点击展示只会有一个元素展示
希望本文所述对大家Android程序设计有所帮助。
相关推荐
-
Android ListView隐藏右侧滚动条功能
关于ListView的滚动条几种情形: 1.默认情况:活动(滚动)时显示,不活动时隐藏. 2.活动和不活动时都显示. 3.活动和不活动时都隐藏. 上述集中情况,均有ListView的以下设置属性方法控制 1.setVerticalScrollBarEnabled(boolean b); 设置true时: 存在滚动条 设置false时: 隐藏滚动条 2.setScrollbarFadingEnabled(boolean b); 设置true时: 活动时显示滚动条,不活动时隐藏滚动条 设置false
-
Android开发之使用GridView展示图片的方法
本文实例讲述了Android使用GridView展示图片的方法.分享给大家供大家参考,具体如下: 今天说说GridView的使用. 所谓GvidView翻译过来就是网格布局:是一个ViewGroup以网格显示它的子视图(view)元素,即二维的.可滚动的网格.网格元素通过ListAdapter自动插入到网格. 这个GridView用处特别多,我这里是用来展示广告的.2*3的广告位置. 废话少说先看个效果图,有图就可以说个XX,对吧,大家都懂的. 大家可以看到搜索下面的那6个块,效果布局还行吧,哈
-
Android ListView自动显示隐藏布局的实现方法
借助View的OnTouchListener接口来监听listView的滑动,通过比较与上次坐标的大小,判断滑动方向,并通过滑动方向来判断是否需显示或者隐藏对应的布局,并且带有动画效果. 1.自动显示隐藏Toolbar 首先给listView增加一个HeaderView,避免第一个Item被Toolbar遮挡. View header=new View(this); header.setLayoutParams(new AbsListView.LayoutParams( AbsListView.
-
Android 根据手势顶部View自动展示与隐藏效果
首先来看一下效果: 大体思路如下: 总体布局用了一个自定义的ViewGroup,里面包了两个View(top View,bottomView) 我在bottomView里放了ViewPager,里面又有Fragment,Fragment里放的是ListView 原理: ViewGroup在分发touchEvent的时候先通过手势GestureDetector判断手势方向,当向上滑动的时候让topView和bottomView同时向上移动,反之亦然. 整体思路不是很难如下是干货: 布局文件 <c
-
android listview实现新闻列表展示效果
本文实例为大家分享了android listview列表展示效果的具体代码,供大家参考,具体内容如下 1.封装一些新闻数据 2.使用listview展示出来 3.设置条目点击事件,点击后跳转浏览器查看新闻 package com.itheima74.newscustom.domain; import android.graphics.drawable.Drawable; /** * Created by My on 2016/11/8. */ public class NewsBean { pu
-
Android ListView 条目多样式展示实例详解
ListView的多种样式条目展示 这里给大家介绍一下简单的ListView的多种样式展示 在布局文件中和往常一样写一个ListViwe的布局 <ListView android:id="@+id/main_listview" android:layout_width="wrap_content" android:layout_height="wrap_content" /> 其他的这里就不多说了,直接介绍适配器里的操作 packag
-
Android编程实现Listview点击展开和隐藏的方法
本文实例讲述了Android编程实现Listview点击展开和隐藏的方法.分享给大家供大家参考,具体如下: 代码较多,所以找关键点大家贴出来,相信大家看了之后很容易就明白的, 在listview的activity中 List<Map<String, Object>> listItems = new ArrayList<Map<String, Object>>() myAdapter = new MyAdapter(getApplicationContext(
-
Android开发实现ListView点击展开收起效果示例
本文实例讲述了Android开发实现ListView点击展开收起效果.分享给大家供大家参考,具体如下: 废话不说先上效果: 实际上这是采用一个ExpandableListView实现的 布局文件很简单: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xm
-
Android编程出现Button点击事件无效的解决方法示例
本文实例讲述了Android编程出现Button点击事件无效的解决方法.分享给大家供大家参考,具体如下: 遇到这样一个问题,给一个界面上方的按钮添加了点击事件,但死活没反应,而放在界面下方的3个按钮,都有相应点击事件,百度了一下无非有两种可能: 1.button没有初始化或者button初始化多次,导致混乱. 2.button点击事件写错,无法监听. 但我确定的是这些都是没有错的,后来找到的原因是下方的scroll布局覆盖了上方的button的布局,使用了fill_parent,所以获取不到点击
-
Android编程实现ListView中item部分区域添加点击事件功能
本文实例讲述了Android编程实现ListView中item部分区域添加点击事件功能.分享给大家供大家参考,具体如下: 需求如题目:Android listview中item部分区域添加点击事件,在一个界面显示了listview,但显示的内容分为上下两部分,分别是白色的背景和蓝色的背景,现在需要只点击蓝色的背景,才能跳转到其他界面,解决方式如下: 一开始想着是不是能在list item的布局给上层布局添加一个: android:clickable="false" android:fo
-
Android编程记录ListView标记行状态的方法
本文实例讲述了Android编程记录ListView标记行状态的方法.分享给大家供大家参考,具体如下: 小Demo无什么特别之处,最特别的就是尽量少用notifyDataSetChanged,开销太大了,当然使用是会省不少工的,不过有时候还是会遇到别的问题的,项目经验表示会有这个可能性的,废话不多少了,直接上关键代码. @Override public void onItemClick(AdapterView<?> adapterView, View view, int pos, long a
-
Android编程使用ListView实现数据列表显示的方法
本文实例讲述了Android编程使用ListView实现数据列表显示的方法.分享给大家供大家参考,具体如下: 要将数据库中的数据列表显示在屏幕上,我们要使用ListView这个控件,当用户从数据库中取出数据时,要将数据绑定到显示控件上,如何绑定呢,我们需要创建适配器进行绑定,创建适配器有两种方式: 第一种是用SimpleAdapter创建(要求绑定的数据是List<HashMap<String, Object>>数据类型) 第二种是用SimpleCursorAdapter创建(要求
-
Android编程实现ListView头部ViewPager广告轮询图效果
本文实例讲述了Android编程实现ListView头部ViewPager广告轮询图效果.分享给大家供大家参考,具体如下: 之前看了别人的一些软件,发现其广告图轮询的时候,那个广告感觉和ViewPager的效果不太一样,后来也查了一下,是因为时间问题,找了一些资料,自己也实践一下. 1.为了解决ListView头部加ViewPager滑动冲突问题,必须自定义ListView,重写里面的onInterceptTouchEvent方法,ListView代码如下: package com.exampl
-
Android编程实现ListView内容无限循环显示的方法
本文实例讲述了Android编程实现ListView内容无限循环显示的方法.分享给大家供大家参考,具体如下: 其实要达到无限循环显示,主要就是实现继承Adapter的类. 我这里用到的是BaseAdapter private class MyAdapter extends BaseAdapter{ private Context context; private String[] strs = null; LayoutInflater inflater = null; public MyAdap
-
Android编程实现ListView滚动提示等待框功能示例
本文实例讲述了Android编程实现ListView滚动提示等待框功能.分享给大家供大家参考,具体如下: 其实原理很简单,只需要设置监听listview的滚动事件即可 file1: package cn.stay.activity; import java.util.ArrayList; import java.util.List; import com.aoran.R; import android.app.Activity; import android.os.Bundle; import
-
Android开发实现ListView点击item改变颜色功能示例
本文实例讲述了Android开发实现ListView点击item改变颜色功能.分享给大家供大家参考,具体如下: 一.先看看效果图: 二.实现步骤: 1. xml布局 <ListView android:id="@+id/left_listview" android:layout_width="match_parent" android:layout_height="match_parent" android:background="
随机推荐
- fckeditor常用Js,获取fckeditor内容,统计fckeditor字数,向fckeditor写入指定代码
- 不错的一篇网络管理员入门与基础技术文章第1/2页
- IIS 配置过程及解决方案 学习小结
- 用Swift构建一个简单的iOS邮件应用的方法
- 纯JavaScript手写图片轮播代码
- 学php必收藏的几个经典代码第1/2页
- php中header跳转使用include包含解决参数丢失问题
- C#中的尾递归与Continuation详解
- 如何解决C语言,函数名与宏冲突
- MySQL安全设置图文教程
- PHP记录和读取JSON格式日志文件
- Vue框架中正确引入JS库的方法介绍
- CSS2实现的隔行换色
- 微信小程序开发之toast提示插件使用示例
- 浅析基于WEB前端页面的页面内容搜索的实现思路
- 完美解决input[type=number]无法显示非数字字符的问题
- JavaScript的递归之递归与循环示例介绍
- MySQL 自定义函数CREATE FUNCTION示例
- javascript replace()用法详解附实例代码
- PHP开发大型项目的一点经验