教你3分钟了解Android 简易时间轴的实现方法
时间:2022-07-27
本文章向大家介绍教你3分钟了解Android 简易时间轴的实现方法,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
一.有段时间没更了,因为一直在思索,应该写点什么,真的是无比纠结。这一回,就给大家分享一款简便好用的,小编自制的土晾时间轴。
附上XML预览图:
效果图 注:小黄鸭不是效果哈,是为了保护个人隐私P上去的:
1.新建一个自定义控件:
public class WorkExcView extends LinearLayout {
private TextView dataLeft;
private TextView dataRight;
private TextView company;
private TextView job;
private TextView jobAsses;
private TextView xiTong;
private TextView ziTian;
private LinearLayout jobContentContainer;
private TextView jobContent;
private LinearLayout commentContainer;
private LinearLayout nianContentContainer;
private TextView nianContent;
private LinearLayout base;
private LinearLayout yueXingContainer;
private TextView yueContent;
private LinearLayout nianXingContainer;
private TextView yueMoreContent;
private TextView nianMoreContent;
private String company_id;
public WorkExcView(Context context) {
this(context,null);
}
public WorkExcView(Context context, AttributeSet attrs) {
super(context, attrs);
init();
}
private void init() {
View inflate = View.inflate(getContext(), R.layout.activity_four_workexcview, this);
dataLeft = (TextView) inflate.findViewById(R.id.workexcview_data_left);
dataRight= (TextView) inflate.findViewById(R.id.workexcview_data_right);
company = (TextView) inflate.findViewById(R.id.workexcview_company);
job = (TextView) inflate.findViewById(R.id.workexcview_job);
jobAsses = (TextView) inflate.findViewById(R.id.workexcview__job_asses);
xiTong = (TextView) inflate.findViewById(R.id.workexcview_xitong);
ziTian = (TextView) inflate.findViewById(R.id.workexcview_zitian);
jobContent = (TextView) inflate.findViewById(R.id.workexcview_jobcontent);
nianContent = (TextView) inflate.findViewById(R.id.workexcview_niancontent);
jobContentContainer = (LinearLayout)inflate.findViewById(R.id.workexcview_jobcontent_container);
commentContainer = (LinearLayout)inflate.findViewById(R.id.workexcview__comment_container);
nianContentContainer= (LinearLayout)inflate.findViewById(R.id.workexcview__niancontent_container);
base = (LinearLayout)inflate.findViewById(R.id.workexcview__base);
yueXingContainer = (LinearLayout)inflate.findViewById(R.id.workexcview_yuexing_container);
yueContent = (TextView)inflate.findViewById(R.id.workexcview_yuecontent);
nianXingContainer = (LinearLayout)inflate.findViewById(R.id.workexcview_nianxing_container);
yueMoreContent = (TextView)inflate.findViewById(R.id.workexcview_yuecontentmore);
nianMoreContent = (TextView)inflate.findViewById(R.id.workexcview_niancontentmore);
}
public void initData(final FourBean.JobsBean jobsBean) {
//赋值代码
}
XML文件:
<?xml version="1.0" encoding="utf-8"?
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:id="@+id/workexcview__base"
android:paddingLeft="8dp"
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
<ImageView
android:id="@+id/workexcview_landian"
android:layout_width="15dp"
android:layout_height="15dp"
android:layout_centerVertical="true"
android:src="@mipmap/landian" /
<TextView
android:id="@+id/workexcview_data_left"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="3dp"
android:layout_toRightOf="@+id/workexcview_landian"
android:text="2016.03"
android:textColor="@color/text"
android:textSize="15sp" /
<TextView
android:id="@+id/workexcview__data_zhong"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@id/workexcview_data_left"
android:text=" —— "
android:textColor="@color/text" /
<TextView
android:id="@+id/workexcview_data_right"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_toRightOf="@+id/workexcview__data_zhong"
android:text="2016.03"
android:textColor="@color/text"
android:textSize="15sp" /
<TextView
android:id="@+id/workexcview_zitian"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:background="@drawable/four_select"
android:padding="4dp"
android:paddingRight="6dp"
android:text="自填"
android:textColor="@color/red"
android:textSize="12sp"
android:visibility="gone" /
<!-- <ImageView
android:id="@+id/workexcview_xitong"
android:layout_width="40dp"
android:layout_height="20dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:paddingRight="10dp"
android:src="@mipmap/xitong"
android:visibility="gone" / --
<TextView
android:id="@+id/workexcview_xitong"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:background="@drawable/textview_shape"
android:padding="4dp"
android:paddingRight="6dp"
android:text="系统"
android:textColor="@color/holo_blue_light"
android:textSize="12sp"
android:visibility="gone" /
<RelativeLayout
android:id="@+id/four_setting_workexc_container"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:visibility="gone"
<TextView
android:id="@+id/four_setting_workexc_logo"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:text="编辑"
android:textColor="@android:color/holo_blue_light"
android:textSize="16sp" /
<ImageView
android:layout_width="20dp"
android:layout_height="20dp"
android:layout_centerVertical="true"
android:layout_toLeftOf="@+id/four_setting_workexc_logo"
android:src="@drawable/xierijidianji3x" /
</RelativeLayout
</RelativeLayout
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="match_parent"
<TextView
android:layout_width="1dp"
android:layout_height="match_parent"
android:layout_marginLeft="7dp"
android:background="@color/black" /
</RelativeLayout
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="8dp"
<TextView
android:id="@+id/workexcview_company"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:text="某某公司"
android:textColor="@color/text"
android:textSize="14sp" /
<TextView
android:id="@+id/workexcview_company_zhong"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_toRightOf="@id/workexcview_company"
android:text=" / "
android:textColor="@color/text"
android:textSize="14sp" /
<TextView
android:id="@+id/workexcview_job"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_toRightOf="@id/workexcview_company_zhong"
android:text="web前段工程师"
android:textColor="@color/text"
android:textSize="14sp" /
</RelativeLayout
<LinearLayout
android:id="@+id/workexcview_jobcontent_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:orientation="vertical"
android:padding="8dp"
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="工作描述:"
android:textColor="@color/text" /
<TextView
android:id="@+id/workexcview_jobcontent"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="3dp"
android:text="巴拉巴拉" /
</LinearLayout
<LinearLayout
android:id="@+id/workexcview__yuecontent_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:orientation="vertical"
android:padding="8dp"
android:visibility="visible"
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
<TextView
android:id="@+id/workexcview_yuecontent_logo"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:text="最新月评价:"
android:textColor="@color/text" /
<LinearLayout
android:layout_centerVertical="true"
android:id="@+id/workexcview_yuexing_container"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_toRightOf="@+id/workexcview_yuecontent_logo"
</LinearLayout
<TextView
android:layout_alignParentRight="true"
android:id="@+id/workexcview_yuecontentmore"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="3dp"
android:gravity="center"
android:padding="2dp"
android:layout_centerVertical="true"
android:background="@drawable/textview_shape"
android:text="更多"
android:textColor="@color/blue_title" /
</RelativeLayout
<TextView
android:id="@+id/workexcview_yuecontent"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="3dp"
android:text="无"
android:textColor="@color/gray" /
</LinearLayout
<LinearLayout
android:id="@+id/workexcview__niancontent_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:orientation="vertical"
android:padding="8dp"
android:visibility="visible"
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
<TextView
android:id="@+id/workexcview_niancontent_logo"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:text="最新年评价:"
android:textColor="@color/text" /
<LinearLayout
android:layout_centerVertical="true"
android:id="@+id/workexcview_nianxing_container"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_toRightOf="@id/workexcview_niancontent_logo"
</LinearLayout
<TextView
android:id="@+id/workexcview_niancontentmore"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="3dp"
android:padding="2dp"
android:layout_centerVertical="true"
android:background="@drawable/textview_shape"
android:text="更多"
android:layout_alignParentRight="true"
android:textColor="@color/blue_title" /
</RelativeLayout
<TextView
android:id="@+id/workexcview_niancontent"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="3dp"
android:text="无"
android:textColor="@color/gray" /
</LinearLayout
<LinearLayout
android:id="@+id/workexcview__comment_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:orientation="vertical"
android:padding="8dp"
android:visibility="visible"
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="离职评价:"
android:textColor="@color/text" /
<TextView
android:id="@+id/workexcview__job_asses"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="3dp"
android:text=""
android:textColor="@color/gray" /
</LinearLayout
</LinearLayout
</LinearLayout
</LinearLayout
2.使用方式:其实很简单,直接for循环new出来赋值就行啦,因为本身就是一个自定义控件~
fourWorkexcContainer.removeAllViews();
for (int i = 0; i < jobs.size(); i++) {
FourBean.JobsBean jobsBean = jobs.get(i);
WorkExcView workExcView = new WorkExcView(getContext());
workExcView.initData(jobsBean);
fourWorkexcContainer.addView(workExcView);
}
3.适合自己的才是最好的,大家可以根据自己的情况进行修改,也可以查阅更多的资料,以上只是一种实现的方式,随手分享。
以上就是本文的全部内容,希望对大家的学习有所帮助。
- apache配置多站点
- linux(六)之文本操作
- Java基础11 对象引用
- maven 3.3.9 for windows 配置
- JS魔法堂:再次认识Function.prototype.call
- MySQL(六)之MySQL常用操作符
- 无人驾驶的基本算法及简单介绍
- CentOS6.5安装Java 8以及Tomcat8
- Java基础06 组合
- 警告:MySQL-server-5.6.21-1.linux2.6.x86_64.rpm: 头V3 DSA/SHA1 Signature, 密钥 ID 5072e1f5: NOKEY
- MySQL(五)之DDL(数据定义语言)与六大约束
- Java基础08 继承
- 关于python字典类型最疯狂的表达方式
- centos6.5使用yum安装mysql
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- 详解 Vue 目录及配置文件之 build 目录
- Linux 常见文件管理命令及目录结构(1)
- Java parseInt( ) 方法
- 详解 Vue 目录及配置文件之 node_modules,src,static,test 目录
- 洛谷 P1077 摆花(记忆化搜索 or DP)
- Vue 使用 element-ui
- Codeforces Round #629 (Div. 3) F. Make k Equal (技巧暴力,类前缀和,思维,数学)
- vue 渐变色文字
- Java 水题系列(2)Pi的近似值
- vue 无缝滚动组件 vue-seamless-scroll
- Java 水题系列(3)回文素数
- NDB Cluster 8.0中的自动模式同步:第1部分
- MongoDB助力一个物流订单系统
- NDB Cluster 8.0中的自动模式同步:第2部分
- NetCore配置框架详解