整理文档,搜刮出一个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下载数1142
183.71 KB下载数642
644.84 KB下载数2755
相关文章
发现更多好内容猜你喜欢
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
python求两个时间的时间差(实例代码)
后端开发2022-11-13
matplotlib 双y轴绘制及合并图例的实现代码
后端开发2024-04-02
golang实现时间滑动窗口的示例代码
后端开发2024-04-02
Matlab实现时间序列预测分类实例代码
后端开发2024-04-02
咦!没有更多了?去看看其它编程学习网 内容吧