基本信息
源码名称:android 时间轴 TimeLine例子
源码大小:0.18M
文件格式:.zip
开发语言:Java
更新时间:2014-12-04
   友情提示:(无需注册或充值,赞助后即可获取资源下载链接)

     嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300

本次赞助数额为: 2 元 
   源码介绍

package com.example.timeline;

import java.util.ArrayList;

import android.app.Activity;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.RelativeLayout;
import android.widget.TextView;

import com.util.timeline.TimeLineView;
import com.util.timeline.TimeViewInfo;

public class MainActivity extends Activity {

	private TimeLineView timeLineView;
	
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        timeLineView = (TimeLineView) findViewById(R.id.timeLineView);
		timeLineView.setWeight(4, 1, 25);
		timeLineView.addLeftRule(RelativeLayout.ALIGN_PARENT_RIGHT);
		timeLineView.addLeftRule(RelativeLayout.CENTER_VERTICAL);
		timeLineView.addMiddleRule(RelativeLayout.CENTER_IN_PARENT);
		timeLineView.addRightRule(RelativeLayout.ALIGN_PARENT_LEFT);
		timeLineView.addRightRule(RelativeLayout.CENTER_VERTICAL);

		ArrayList<TimeViewInfo> infos = new ArrayList<TimeViewInfo>();
		infos.add(createTimeInfo(true, false, "今天",
				"江苏有8653家网吧,13847家黑吧,合计共160万台电脑,你知道这些网吧的技术服务都是谁在做吗?", "查看详情"));
		infos.add(createTimeInfo(false, false, "",
				"江苏有8653家网吧,13847家黑吧,合计共160万台电脑,你知道这些网吧的技术服务都是谁在做吗?", "查看详情"));
		infos.add(createTimeInfo(false, false, "去年",
				"江苏有8653家网吧,13847家黑吧,合计共160万台电脑,你知道这些网吧的技术服务都是谁在做吗?", "查看详情"));
		infos.add(createTimeInfo(false, false, "",
				"江苏有8653家网吧,13847家黑吧,合计共160万台电脑,你知道这些网吧的技术服务都是谁在做吗?", "查看详情"));
		infos.add(createTimeInfo(false, false, "",
				"江苏有8653家网吧,13847家黑吧,合计共160万台电脑,你知道这些网吧的技术服务都是谁在做吗?", "查看详情"));
		infos.add(createTimeInfo(false, false, "更早",
				"江苏有8653家网吧,13847家黑吧,合计共160万台电脑,你知道这些网吧的技术服务都是谁在做吗?", "查看详情"));
		infos.add(createTimeInfo(false, true, "",
				"江苏有8653家网吧,13847家黑吧,合计共160万台电脑,你知道这些网吧的技术服务都是谁在做吗?", "查看详情"));

		timeLineView.setTimeInfos(infos);
	}

	private TimeViewInfo createTimeInfo(boolean first, boolean last,
			String date, String title, String summary) {
		TimeViewInfo info = new TimeViewInfo();

		View leftMain = createLeftView(date);
		info.leftView = leftMain;

		boolean showNode = false;
		if (date == null || date.equals("")) {
			showNode = false;
		} else {
			showNode = true;
		}
		View middleMain = createMiddleView(showNode, first, last);
		info.middleView = middleMain;
		
		View right = createRightView(title, summary);
		info.rightView = right;

		return info;
	}

	private View createRightView(String titleStr, String summaryStr) {
		View rightView = LayoutInflater.from(this).inflate(
				R.layout.time_line_right, null);
		TextView title = (TextView) rightView.findViewById(R.id.title);
		title.setText(titleStr);
		TextView summary = (TextView) rightView.findViewById(R.id.summary);
		summary.setText(summaryStr);
		return timeLineView.createRightView(this, rightView);
	}

	private View createMiddleView(boolean showNode, boolean first, boolean last) {
		View middleView = LayoutInflater.from(this).inflate(
				R.layout.time_line_middle, null);
		if (!showNode)
			middleView.findViewById(R.id.node).setVisibility(View.INVISIBLE);
		if (first)
			middleView.findViewById(R.id.top).setVisibility(View.INVISIBLE);
		if (last)
			middleView.findViewById(R.id.bottom).setVisibility(View.INVISIBLE);

		return timeLineView.createMiddleView(this, middleView);
	}

	private View createLeftView(String content) {
		View leftView = LayoutInflater.from(this).inflate(
				R.layout.time_line_left, null);
		TextView date = (TextView) leftView.findViewById(R.id.date);
		date.setText(content);
		return timeLineView.createLeftView(this, leftView);
	}


}