android gridview行分割线,Android使用GridView实现表格分割线效果

使用gridview实现表格分割线效果,网格布局表格布局也是可以实现的。

效果如下:

7e644f28b3320549e66733f647296ca5.png

1.主函数代码:

package com.example.qd.douyinwu;

import android.app.activity;

import android.content.context;

import android.os.bundle;

import android.support.v4.app.fragment;

import android.view.layoutinflater;

import android.view.view;

import android.view.viewgroup;

import android.widget.baseadapter;

import android.widget.gridview;

import android.widget.imageview;

import android.widget.linearlayout;

import android.widget.relativelayout;

import android.widget.simpleadapter;

import android.widget.textview;

import java.util.arraylist;

import java.util.hashmap;

import java.util.list;

import java.util.map;

/**

* 自定义gridlayout 表格实现系列

*

* https://github.com/li504799868/gridlayoutview

* https://github.com/eason90/gridbuilder

*

* https://github.com/wimsonevel/androidgridlayout

*

* https://blog.csdn.net/swust_chenpeng/article/details/37873215

* tablelayout 实现类似gridview的效果 带分割线

*

*

* https://github.com/lrh1993/autoflowlayout 网格布局实现

* https://github.com/dolphinwang/gridlayout

* https://blog.csdn.net/aminy123/article/details/69053339 频道管理

*/

public class sgridviewacivity extends activity {

private view view = null;

private gridview gridview;

private list> data_list;

private simpleadapter sim_adapter;

private context mcontext;

// 图片封装为一个数组

private int[] icon = {r.drawable.ic_launcher_background, r.drawable.ic_launcher_background,

r.drawable.jz_backward_icon, r.drawable.jz_backward_icon, r.drawable.ic_launcher_background,

r.drawable.jz_backward_icon, r.drawable.jz_backward_icon, r.drawable.ic_launcher_background,

r.drawable.jz_backward_icon, r.drawable.ic_launcher_background, r.drawable.ic_launcher_background,

r.drawable.jz_backward_icon};

private string[] iconname = {"通讯录", "日历", "照相机", "时钟", "游戏", "短信", "铃声",

"设置", "语音", "天气", "浏览器", "视频"};

private string[] iconnames = {"", "篮球", "击剑", "保龄球", "排球","台球",

"中国", "666", "688", "999", "888","988",

"意大利", "122", "222", "112","388","321",

"法国", "322", "200", "100", "210","188",

"韩国", "101", "120", "142", "234", "532"};

@override

protected void oncreate(bundle savedinstancestate) {

super.oncreate(savedinstancestate);

setcontentview(r.layout.activity_gv);

gridview = (gridview) findviewbyid(r.id.gridview2);

//新建list

data_list = new arraylist>();

//获取数据

getdata();

//新建适配器

string[] from = {"image", "text"};

int[] to = {r.id.image, r.id.text};

gridview.setadapter(new imageadapter(sgridviewacivity.this));

// sim_adapter = new simpleadapter(this, data_list, r.layout.item, from, to);

//配置适配器

// gridview.setadapter(sim_adapter);

}

public list> getdata() {

//cion和iconname的长度是相同的,这里任选其一都可以

for (int i = 0; i < icon.length; i++) {

map map = new hashmap();

map.put("image", icon[i]);

map.put("text", iconname[i]);

data_list.add(map);

}

return data_list;

}

// references to our images

private integer[] mthumbids = {

r.drawable.jz_backward_icon, r.drawable.jz_add_volume,

r.drawable.jz_add_volume, r.drawable.jz_add_volume,

r.drawable.jz_add_volume, r.drawable.jz_add_volume,

r.drawable.jz_add_volume, r.drawable.jz_add_volume,

r.drawable.jz_add_volume, r.drawable.jz_add_volume,

r.drawable.jz_add_volume, r.drawable.jz_add_volume,

r.drawable.jz_add_volume, r.drawable.jz_add_volume,

r.drawable.jz_add_volume, r.drawable.jz_add_volume,

r.drawable.jz_add_volume, r.drawable.jz_add_volume,

r.drawable.jz_add_volume, r.drawable.jz_add_volume,

r.drawable.jz_add_volume, r.drawable.jz_add_volume

};

private class imageadapter extends baseadapter {

private context mcontext;

public imageadapter(context context) {

this.mcontext = context;

}

@override

public int getcount() {

return iconnames.length;

}

@override

public object getitem(int position) {

return null;

}

@override

public long getitemid(int position) {

return position;

}

@override

public view getview(int position, view convertview, viewgroup parent) {

viewholder viewholder = null;

if (convertview == null) {

convertview = layoutinflater.from(mcontext).inflate(r.layout.item, parent, false);

viewholder = new viewholder();

// viewholder.itemimg = (imageview) convertview.findviewbyid(r.id.iv_head);

viewholder.mtext = (textview) convertview.findviewbyid(r.id.text);

convertview.settag(viewholder);

} else {

viewholder = (viewholder) convertview.gettag();

}

// 这里只是模拟,实际开发可能需要加载网络图片,可以使用imageloader这样的图片加载框架来异步加载图片

// imageloader.displayimage("drawable://" + mthumbids[position], viewholder.itemimg);

viewholder.mtext.settext(iconnames[position]);

return convertview;

}

class viewholder {

imageview itemimg;

textview mtext;

}

}

}

2.主函数布局:

xmlns:tools="http://schemas.android.com/tools"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:background="@color/colorprimary"

android:orientation="vertical">

android:id="@+id/gridview2"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:layout_margintop="30dp"

android:background="#999"

android:horizontalspacing="1dp"

android:verticalspacing="1dp"

android:padding="1dp"

android:numcolumns="6" />

listview设置分割线的话设置:

android:divider

android:dividerheight

a、设置gridview背景色。

b、设置水平和竖直方向间隔:android:horizontalspacing和android:verticalspacing。

c、设置gridview的item的背景色及其选中后的颜色。

3.适配器布局:

android:layout_width="match_parent"

android:layout_height="match_parent"

android:orientation="vertical"

android:background="@drawable/gv_one_selector"

>

android:id="@+id/text"

android:gravity="center"

android:layout_width="match_parent"

android:layout_height="39dp"

android:textsize="13sp"

android:padding="0dp"

android:text="textview" />

4.背景选择器gv_one_selector:

android:state_selected="true" >

android:color="#cccccc"

/>

android:state_pressed="true" >

android:color="#cccccc"

/>

android:color="#ffffff"

/>

参考选择器:

android:state_selected="true" >

android:color="#cccccc"

/>

android:state_pressed="true" >

android:color="#cccccc"

/>

以上是全部代码。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持萬仟网。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/566576.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

android hook 实例,代码实例分析android中inline hook

以下内容通过1、实现目标注入程序&#xff0c;2、实现主程序&#xff0c;3、实现注入函数&#xff0c;4、thumb指令集实现等4个方面详细分析了android中inline hook的用法&#xff0c;以下是全部内容&#xff1a;最近终于沉下心来对着书把hook跟注入方面的代码敲了一遍&#xf…

dax 筛选 包含某个字_筛选状态(ALL与REMOVEFILTERS)

这一章比较绕&#xff0c;但是帮助我们理清切片器的筛选状态以及主要函数对于公式筛选上下文的改变。1.切片器的筛选状态切片器的全选与全不选的状态的区别&#xff0c;我们可以看下图&#xff1a;全不选全选多个点击筛选逐个点击至全部结论初始状态&#xff0c;没有选择任何元…

山东鲁能轨道智能巡检机器人_温湿度传感器在轨道巡检机器人中的应用

▲地下综合管廊智慧管廊建设&#xff0c;是智慧城市在地下的一个缩影&#xff0c;有助于缓解“大城市病”&#xff0c;实现精细化和动态管理。与此同时&#xff0c;各种传感器技术也将被运用到地下综合管廊运维的每一环&#xff0c;这其中&#xff0c;地下管廊巡检机器人便是其…

android显示网络图片控件,Android控件之ImageView(二)

前言在上一篇文章中&#xff0c;我们讲解了如何加载本地图片&#xff0c;那么在实际项目中 ImageView 大多数使用场景是加载网络图片&#xff0c;网络图片其实就是存储在服务器上的文件&#xff0c;我们需要从服务器获取到文件的二进制输入流 Inpustream &#xff0c;然后将其转…

坯子库曲面推拉教程_一招曲面流动,搞定99%异形建模

曲面流动可以建什么模型&#xff1f;这样的▼这样的▼还有这样的▼那究竟如何使用曲面流动呢?本文告诉你!曲面流动是什么&#xff1f;曲面流动功能相当于Rhino(犀牛)中的“沿曲面流动”命令&#xff0c;可以使来源几何体群组或组件&#xff0c;根据基准平面为参照&#xff0c;…

android o 结构光流程,惊艳亮相!一分钟看懂OPPO Find X 3D结构光技术是什么鬼,太牛了...

法国时间6月19日&#xff0c;OPPO在巴黎卢浮宫正式举办未来旗舰Find X发布会。此次亮相的Find X新机&#xff0c;既有充满艺术感的3D玻璃机身设计&#xff0c;又有3D结构光、曲面全景屏、双轨潜望结构等多项黑科技。众多黑科技中&#xff0c;以3D结构光O-face最受数目。据悉&am…

jframe运行和预览大小不一样_同一款车型,为什么配的轮胎大小还会不一样?【内含福利】...

小编又来给大家送福利啦~阅读完文章之后 戳文章底部阅读原文 岁末巨献 国货好胎&#xff01;免费体验价值1999元国产轮胎&#xff01;相信有不少朋友&#xff0c;买车的时候一定会有类似的经历。选车、试驾的时候&#xff0c;看到试驾车配置相当漂亮&#xff0c;尤其搭配的轮圈…

java设计按月每天签到_活动攻略|新同学新签到,欢乐福利全都要!

12月03日【每日一题答案】— 枫叶书签答对问题即有机会获得金币、道具、积分&#xff0c;还有宠物好奇星噢~12月来了&#xff0c;和12月一起来的是我们的新同学——花轮&#xff01;谁不喜欢浪漫体贴的小少爷呢&#xff01;喵星星感觉自己爱消除【最受欢迎男性角色】的地位正岌…

bs cs架构区别_软件架构设计分层模型和构图思考

今天谈下架构设计中的分层思维和分层模型以及基于分层思维下的架构构图逻辑。架构思维概述对于架构思维本身仍然是类似系统思维&#xff0c;结构化思维&#xff0c;编程思维等诸多思维模式的一个合集。由于架构的核心作用是在业务现实世界和抽象的IT实现之间建立起一道桥梁&…

pin码计算器网页版_AP微积分Excel简便计算+网页工具指南

今年的AP考试既然是开卷&#xff0c;允许大家使用各种资源。今天一个学生提了一个不(zhe)错(mo)的(wo)想(de)法(shi)。于是给大家写了一个Excel的公式表格照例老规矩&#xff1a;点个”在看“再走呗先说明一下使用指南&#xff1a;文末有下载表格包含&#xff1a;(目前的功能&a…

HTML文本下划线效果,聊聊CSS中文本下划线_CSS, SVG, masking, clip-path, 会员专栏, text-decoration 教程_W3cplus...

在Web中给文本添加下划线常常出现在链接的文本上&#xff0c;早期一般使用text-decoration属性给文本添加下划线、删除线等。除了text-decoration之外&#xff0c;CSS还有很多技术方案可以给文本添加下划线效果&#xff0c;比如border-bottom、box-shadow、background-image等。…

学员感言html效果图,学员感言丨非计算机专业学员 开始学HTML5的点点滴滴

学员感言丨非计算机专业学员 开始学HTML5的点点滴滴来源&#xff1a;奇酷教育 发表于&#xff1a;2017-08-03 12:09:25在奇酷学员学习HTML5的这段时间里&#xff0c;让我学习到了实用的技能和知识。我是一个非计算机类学生&#xff0c;可以说是对编程一窍不通&#xff0c;在选择…

请领导批阅文件怎么说_请领导吃饭,不要对外说,职场员工为何如此保密?

前一段时间公司员工晋升&#xff0c;因为小王在公司的表现非常不错&#xff0c;所以成为了公司领导的秘书。其实按理来说&#xff0c;成为公司领导的秘书与否&#xff0c;往往只需要看这个员工有没有眼力&#xff0c;看她的办事能力如何&#xff0c;能不能提高公司的整体效率&a…

幼儿使用计算机需要注意事项,儿童玩电脑注意事项

相信现在的家庭里面很多小孩子爱玩电脑&#xff0c;但是电脑玩多了&#xff0c;对孩子眼睛、身体都不好&#xff0c;那么应该怎么才能科学玩电脑呢&#xff1f;妈网百科给大家总结了一些其他家长的经验&#xff0c;希望能够帮得到各位有需要的家长。【与电脑保持距离】孩子与电…

c++实现卷积码编码和维特比译码_鑫艾勒维特家用别墅电梯:安全至上,无可替代...

近年来&#xff0c;随着房地产行业的兴起&#xff0c;家用别墅电梯作为房地产配套产业也逐渐走进了平常家庭别墅中&#xff0c;如今一句俗语“无梯不成墅”将电梯在别墅中的重要地位彰显的淋漓尽致。艾勒维特家用液压小电梯因其适用于私人住宅&#xff0c;适用场景多样等特点&a…

某个元素的距离页面的左边距_如何提高办公写作效率?先设置好页面上的这4类数据,准没错...

有人说&#xff0c;在体制内混的好&#xff0c;首先要文笔好。这里要说的是&#xff0c;一个文笔好的人&#xff0c;可能在哪里都能混的好。#直言职场#因为很多表达形式都需要以文字做雏形&#xff0c;进而进行各种形式的变换和转化。就拿当下很热门的自媒体行业来说&#xff0…

地线与接地螺丝_电气接地的规范要求及接地的各项参数,收藏!

申请加入微信群&#xff1a;加微信好友&#xff0c;diangong1968申请格式&#xff1a;城市-公司简称(电气工程师职称)点此去资料库下载本篇资料为了主要目的是保护人身和设备的安全&#xff0c;减少公司电气事故发生&#xff0c;控制公司人员和财产不受损失&#xff0c;所有电气…

ai怎么渐变颜色_Ai渐变插画怎么丰富细节

此次教程只需小伙伴对AI软件有基本的操作了解就可以完成&#xff0c;易上手容易理解。止疼药瓶子1.新建画布800X600&#xff0c;绘制止疼药瓶子轮廓用矩形工具(W)绘制止疼药瓶子轮廓&#xff0c;圆角处用直接选择工具(A)选择矩形2个锚点&#xff0c;拉成自己想要的圆角。2.给止…

axure8.0发布html,Axure 8.0 beta最后一批新增和改进功能的介绍

之前一直想翻译Axure官方博客的这篇介绍&#xff0c;但一直没抽出时间&#xff0c;今天偶然发现ShunzUX翻译了这篇文章。阅读后觉得翻译得很准确&#xff0c;特别转来分享给大家。特别是On-Premises Axure Share&#xff0c;我之前都是翻译成『本地部署Axure Share』&#xff0…

实现option上下移动_Django实战2-自动化运维之配置管理-05:字典管理功能实现

本节内容主要实现CMDB基础数据管理功能的实现&#xff0c;文档中会介绍到datatables后端分页实现和过滤查询功能的实现。在Django实战1中已经自定义了 添加、修改等自定义类视图&#xff0c;本节中可以直接使用。1、字典管理页面实现首先来实现字段管理的基础管理页面&#xff…