做项目的过程中有个需求需要时光轴,于是网上找了部分资料 ,写了个案例,现在分享给大家。
如图:
activity_main.xml
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"tools:context=".MainActivity"><android.support.v7.widget.RecyclerViewandroid:id="@+id/recyclerView"android:layout_width="match_parent"android:layout_height="match_parent"android:overScrollMode="never" /></RelativeLayout>
item.xml
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"android:layout_width="match_parent"android:layout_height="wrap_content"android:paddingLeft="8dp"android:paddingRight="8dp"android:paddingTop="8dp"><TextViewandroid:id="@+id/item_timeline_time"android:layout_height="wrap_content"android:layout_width="wrap_content"android:layout_marginRight="8dp"android:layout_marginTop="18dp"android:gravity="center_horizontal"android:padding="4dp"android:textColor="@color/colorAccent"android:textSize="16sp"android:text="2015-06-08\n09:56"/><RelativeLayoutandroid:id="@+id/item_timeline_icon_layout"android:layout_width="48dp"android:layout_height="48dp"android:layout_marginBottom="4dp"android:layout_marginRight="8dp"android:layout_toRightOf="@id/item_timeline_time"><com.timelinedemo.CircleImageViewandroid:id="@+id/item_timeline_icon_bg"android:layout_width="match_parent"android:layout_height="match_parent"android:src="@android:color/transparent"app:civ_border_width="4dp" /><ImageViewandroid:id="@+id/item_timeline_icon"android:layout_width="24dp"android:layout_height="24dp"android:layout_centerInParent="true"android:scaleType="fitCenter" /></RelativeLayout><TextViewandroid:id="@+id/item_timeline_content"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_marginTop="18dp"android:layout_toRightOf="@id/item_timeline_icon_layout"android:text="今日收入"android:textColor="@color/colorPrimary"android:textSize="15sp" /><TextViewandroid:id="@+id/item_timeline_money"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_below="@id/item_timeline_content"android:layout_marginTop="8dp"android:layout_toRightOf="@id/item_timeline_icon_layout"android:text="$ 100"android:textColor="@color/colorPrimary"android:textSize="22sp" /><Viewandroid:id="@+id/item_timeline_view"android:layout_width="2dp"android:layout_height="60dp"android:layout_alignLeft="@id/item_timeline_icon_layout"android:layout_below="@id/item_timeline_icon_layout"android:layout_marginLeft="23dp"android:background="@color/colorAccent" /> </RelativeLayout>
Activity.Java
public class MainActivity extends AppCompatActivity {private RecyclerView recyclerView;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);initLayout();}private void initLayout(){recyclerView= (RecyclerView) findViewById(R.id.recyclerView);recyclerView.setLayoutManager(new LinearLayoutManager(this));recyclerView.setHasFixedSize(true);recyclerView.setItemAnimator(new DefaultItemAnimator());initData();}private void initData(){List<TimeInfo > list=new ArrayList<>();for(int i=0;i<15;i++){list.add(new TimeInfo());}TimelineAdapter mAdapter = new TimelineAdapter(this, list);recyclerView.setAdapter(mAdapter);} }
添加依赖库:
compile 'com.android.support:recyclerview-v7:23.0.0'
由于代码太多,完整代码未给出,源码直接下载即可
源码点击下载
转载于:https://www.cnblogs.com/zhangqie/p/6378771.html