• Android之RecyclerView实现时光轴


    做项目的过程中有个需求需要时光轴,于是网上找了部分资料 ,写了个案例,现在分享给大家。

    如图:

            

    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.RecyclerView
            android: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">
        <TextView
            android: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
    09:56"
            />
    
        <RelativeLayout
            android: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.CircleImageView
                android: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" />
    
            <ImageView
                android:id="@+id/item_timeline_icon"
                android:layout_width="24dp"
                android:layout_height="24dp"
                android:layout_centerInParent="true"
                android:scaleType="fitCenter" />
    
        </RelativeLayout>
    
        <TextView
            android: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" />
    
        <TextView
            android: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" />
        <View
            android: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;
    
        @Override
        protected 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'

    由于代码太多,完整代码未给出,源码直接下载即可

    源码点击下载

  • 相关阅读:
    论文Objects as Points的解读
    图像增强
    from __future__ import absolute_import作用
    python降级
    conda命令总是出现Solving environment: failed错误
    ResNet网络结构
    卷积与池化操作后特征图大小的计算
    vs2015安装包下载与安装教程
    每隔几秒检测进程是否挂了
    阿里云部署flask
  • 原文地址:https://www.cnblogs.com/zhangqie/p/6378771.html
Copyright © 2020-2023  润新知