教你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.适合自己的才是最好的,大家可以根据自己的情况进行修改,也可以查阅更多的资料,以上只是一种实现的方式,随手分享。

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

时间: 2024-11-01 13:34:07

教你3分钟了解Android 简易时间轴的实现方法的相关文章

Android Studio时间选择器的创建方法

本文实例为大家分享了Android九宫格图片展示的具体代码,供大家参考,具体内容如下 效果显示: 1.创建xml页面(我的项目扣下来的,有的地方会报错要改) <TextView android:id="@+id/consultation_tv_birthdate" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_a

android计时器,时间计算器的实现方法_Android

需求:默认为"00:00:00",点击开始按钮时清零后开始计时,出现如10:28:34.点击停止的时候停止计时.问题:使用Calendar DateFormat的方法,不设置时区获取到的小时是本地时区的(东八区的就是8),设置成GMT标准时区获取到的时间是12小时(12:00:00),设置24小时制无效.在开始时间加减各种小时都无效,而且计时只能到12小时就自动跳上去了,始终无法出现默认状态00:00:00开始计时的效果.尝试各种时间设置方法无效后只能自己写一个根据秒数转换时间格式字符

android计时器,时间计算器的实现方法

需求:默认为"00:00:00",点击开始按钮时清零后开始计时,出现如10:28:34.点击停止的时候停止计时.问题:使用Calendar DateFormat的方法,不设置时区获取到的小时是本地时区的(东八区的就是8),设置成GMT标准时区获取到的时间是12小时(12:00:00),设置24小时制无效.在开始时间加减各种小时都无效,而且计时只能到12小时就自动跳上去了,始终无法出现默认状态00:00:00开始计时的效果.尝试各种时间设置方法无效后只能自己写一个根据秒数转换时间格式字符

图片-android相册shang 时间轴是怎么实现的啊?

问题描述 android相册shang 时间轴是怎么实现的啊? 我见现在很多android手机的系统相册滑动的时候,都会在左边时间轴上显示相应的时间等信息.或者在右侧的scrollbar上显示信息,这该怎么实现啊? 我用gridview实现了分组显示图片,可以按年月日,但是那是在每组头部显示.不知道怎么才能在时间轴上捕获这年月日信息...求大神指点迷津 解决方案 http://www.oschina.net/question/920274_166535 解决方案二: http://downloa

Android控件之使用ListView实现时间轴效果_Android

 实现思路: 该View是通过ListView实现的,通过实体两个字段内容content和时间time来展示每个ListItem 时间轴是使用上面一条线(20dp)和中间一个圆(15dp)和下面一条线(40dp)组装成的 在ListView中,设置其分割线为空,并且没有点击效果 效果图: 步骤一:使用xml画出一个灰色的圆点(time_cycle.xml) <?xml version="1.0" encoding="utf-8"?> <shape

五分钟教你认识Facebook“个人时间轴”

Facebook正式向公众发布了新"个人时间轴(Timeline)"功能.该功能表述性变得更加鲜明,帖子.照片.共享链接以及签到等应用采用全新历史性列表的设置模式,远远区别于你以前接触到的FACEBOOK主页,带来超华丽的操作体验的同时,也确保了更安全的用户隐私. 在现在的日常生活中,你早已经习惯了每个人都能欣赏对你的生活点滴加以欣赏和点评,所以这个全新的界面完全能让你深陷其中,爱不释手.只要你激活使用FACEBOOK"个人时间轴"功能,通常要花上一个星期的时间来熟

Android实现时间倒计时功能

本文实例为大家分享了Android实现时间倒计时功能展示的具体代码,供大家参考,具体内容如下 效果展示 MainActivity(主页面代码) public class MainActivity extends Activity { private RelativeLayout countDown; // 倒计时 private TextView daysTv, hoursTv, minutesTv, secondsTv; private long mDay = 10; private long

Android 获取时间实例代码

Android 获取时间实例代码 注意: h:12小时制小时数 H:24小时制小时数 实例代码: import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; /** * Created by Administrator on 2017/5/8. */ public

php中时间轴开发,即显示为“刚刚”、“5分钟前”、“昨天10:23

  php中时间轴开发,即显示为"刚刚"."5分钟前"."昨天10:23"等 开发中还是蛮有用的,譬如论坛帖子,围脖等都有相关应用 //时间转换函数  function tranTime($time) {       $rtime = date("m-d H:i",$time);       $htime = date("H:i",$time);              $time = time() -