整理文档,搜刮出一个Android TimeLine 时间节点轴的实现实例代码,稍微整理精简一下做下分享。
效果图
具体实现 (RecyclerView)
Adapter
package com.haoren.timeline;import android.content.Context;import android.support.v7.widget.RecyclerView;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import android.widget.ImageView;public class TimeLineAdapter extends RecyclerView.Adapter<TimeLineAdapter.HorizontalVh> { private Context context; //时间节点数 private int nodeNum = 0; //当前到达节点 private int currentNode = 1; public TimeLineAdapter(Context context, int nodeNum) { this.context = context; this.nodeNum = nodeNum; } @Override public HorizontalVh onCreateViewHolder(ViewGroup parent, int viewType) { View view = LayoutInflater.from(context).inflate(R.layout.time_line, null, false); HorizontalVh vh = new HorizontalVh(view); return vh; } @Override public void onBindViewHolder(HorizontalVh holder, int position) { if (position < currentNode) { //当前节点之前的全部设为已经经过 holder.point.setImageResource(R.mipmap.point_select); holder.lineLeft.setBackgroundResource(R.color.colorPrimary); holder.lineRight.setBackgroundResource(R.color.colorPrimary); } // 去掉左右两头的分支 if (position == 0) { holder.lineLeft.setVisibility(View.INVISIBLE); } if (position == nodeNum - 1) { holder.lineRight.setVisibility(View.INVISIBLE); } } @Override public int getItemCount() { return nodeNum; } public void setCurrentNode(int currentNode) { this.currentNode = currentNode; this.notifyDataSetChanged(); } class HorizontalVh extends RecyclerView.ViewHolder { private ImageView point; private View lineLeft, lineRight; public HorizontalVh(View itemView) { super(itemView); this.point = (ImageView) itemView.findViewById(R.id.point); this.lineLeft = itemView.findViewById(R.id.line_left); this.lineRight = itemView.findViewById(R.id.line_right); } }}
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
软考中级精品资料免费领
- 历年真题答案解析
- 备考技巧名师总结
- 高频考点精准押题
- 资料下载
- 历年真题
193.9 KB下载数265
191.63 KB下载数245
143.91 KB下载数1148
183.71 KB下载数642
644.84 KB下载数2756
相关文章
发现更多好内容- 如何在 JAVA 中直接读取文件流内容?(JAVA怎么直接读取文件流内容)
- 如何将 Java 文件转换为可执行文件?(java文件如何变成可执行文件)
- 如何合理设置缓存池大小?(缓存池大小如何设置)
- 如何轻松进行 java 反汇编?超详细步骤教你快速上手!(如何进行java反汇编)
- 在 Java 中如何实现旧文件内容的覆盖?(java如何将旧文件内容覆盖)
- Java 中如何实现字符串字段的升序排序?(Java字符串字段升序排序怎么实现)
- 如何使用 Java 的 Arrays 类?(详细教程及示例)(java的Arrays类如何使用)
- Java 递归调用会对性能产生哪些影响?(java递归调用的性能影响 )
- Java Solr究竟支持哪些查询语法?(Java Solr支持哪些查询语法)
- Java 中的获取绝对值操作是否能应用于数组?(java获取绝对值能否应用于数组)
猜你喜欢
AI推送时光机Android TimeLine 时间节点轴的实现实例代码
后端开发2023-05-31
Flutter时间轴Timeline的实现
后端开发2024-04-02
Android recyclerview实现纵向虚线时间轴的示例代码
后端开发2024-04-02
使用vis-timeline绘制甘特图并实现时间轴的中文化(案例代码)
后端开发2023-02-16
vue实现两列水平时间轴的示例代码
后端开发2024-04-02
vue中实现当前时间echarts图表时间轴动态的数据(实例代码)
后端开发2022-11-13
Android自定义时间轴的实现过程
后端开发2022-06-06
Android 夜间模式的实现代码示例
后端开发2022-06-06
使用JavaScript 实现时间轴与动画效果的示例代码(前端组件化)
后端开发2024-04-02
Echarts实现一张图现切换不同的X轴(实例代码)
后端开发2024-04-02
android实现ViewPager的Indicator的实例代码
后端开发2022-06-06
Android Socket接口实现即时通讯实例代码
后端开发2022-06-06
使用CSS3实现简单时间轴效果的案例
后端开发2023-06-06
Android实现倒计时的按钮的示例代码
后端开发2022-06-06
Android原生实现多线程断点下载实例代码
后端开发2023-05-31
Android ContentProvider的实现及简单实例代码
后端开发2022-06-06
matplotlib 双y轴绘制及合并图例的实现代码
后端开发2024-04-02
golang实现时间滑动窗口的示例代码
后端开发2024-04-02
android设备间实现无线投屏的示例代码
后端开发2024-04-02
Matlab实现时间序列预测分类实例代码
后端开发2024-04-02
咦!没有更多了?去看看其它编程学习网 内容吧