教你3分鐘了解Android 簡易時間軸的實(shí)現(xiàn)方法
一.有段時間沒更了,因?yàn)橐恢痹谒妓?,?yīng)該寫點(diǎn)什么,真的是無比糾結(jié)。這一回,就給大家分享一款簡便好用的,小編自制的土晾時間軸。
附上XML預(yù)覽圖:
效果圖 注:小黃鴨不是效果哈,是為了保護(hù)個人隱私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="系統(tǒng)" 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.使用方式:其實(shí)很簡單,直接for循環(huán)new出來賦值就行啦,因?yàn)楸旧砭褪且粋€自定義控件~
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.適合自己的才是最好的,大家可以根據(jù)自己的情況進(jìn)行修改,也可以查閱更多的資料,以上只是一種實(shí)現(xiàn)的方式,隨手分享。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- android自定義控件實(shí)現(xiàn)簡易時間軸(2)
- Android recyclerview實(shí)現(xiàn)縱向虛線時間軸的示例代碼
- Android自定義控件實(shí)現(xiàn)時間軸
- Android使用自定義View實(shí)現(xiàn)橫行時間軸效果
- Android自定義view仿淘寶快遞物流信息時間軸
- Android實(shí)現(xiàn)快遞物流時間軸效果
- Android實(shí)現(xiàn)列表時間軸
- Android自定義指示器時間軸效果實(shí)例代碼詳解
- Android自定義View實(shí)現(xiàn)垂直時間軸布局
- android自定義控件實(shí)現(xiàn)簡易時間軸(1)
相關(guān)文章
Android 通過Intent調(diào)用系統(tǒng)拍照程序出現(xiàn)圖片太小的問題解決辦法
這篇文章主要介紹了Android 通過Intent調(diào)用系統(tǒng)拍照程序出現(xiàn)圖片太小的問題解決辦法的相關(guān)資料,需要的朋友可以參考下2017-07-07基于Android在布局中動態(tài)添加view的兩種方法(總結(jié))
下面小編就為大家?guī)硪黄贏ndroid在布局中動態(tài)添加view的兩種方法(總結(jié))。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-10-10Flutter學(xué)習(xí)LogUtil封裝與實(shí)現(xiàn)實(shí)例詳解
這篇文章主要為大家介紹了Flutter學(xué)習(xí)LogUtil封裝與實(shí)現(xiàn)實(shí)例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-09-09Android編程中出現(xiàn)The connection to adb is down問題的解決方法
這篇文章主要介紹了Android編程中出現(xiàn)The connection to adb is down問題的解決方法,涉及Android進(jìn)程與服務(wù)的相關(guān)操作技巧,需要的朋友可以參考下2015-12-12Android Studio / IDEA kotlin 顯示 var 真實(shí)類型操作
這篇文章主要介紹了Android Studio / IDEA kotlin 顯示 var 真實(shí)類型操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-08-08Android入門之SubMenu的實(shí)現(xiàn)詳解
這篇文章主要為大家詳細(xì)介紹了Android如何實(shí)現(xiàn)SubMenu子菜單的效果,文中的示例代碼講解詳細(xì),對我們學(xué)習(xí)Android有一定的幫助,感興趣的可以了解一下2022-11-11