HamsterUIKit 1.0

HamsterUIKit 1.0

测试已测试
语言语言 SwiftSwift
许可证 Apache-2.0
发布最后发布2018年6月
SPM支持 SPM

Howard Wang 维护。



  • Howard Wang

HamsterUIKit

一个简单优雅的 UIKit(图表) 用于 iOS,用 Swift 编写。

📊曲线图和条形图。
💡协议基于 UIKit(UITableView) 设计。
🔟10 分钟内绘制出复杂而优雅的图表。

协议

初始化和重新加载

UITableView HamsCurveChart HamsBarChart
init(frame: CGRect) 相同 相同
init?(coder aDecoder: NSCoder) 相同 相同
reloadData 相同 相同

数据源

UITableView HamsCurveChart HamsBarChart
numberOfSections(in tableView: UITableView) -> Int numberOfCharts(in curveChart: HamsCurveChart) -> Int numberOfCharts(in barChart: HamsBarChart) -> Int
tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell curveChart(_ curveChart: HamsCurveChart, pointForChart indexPath: HamsIndexPath) -> HamsCurveChartPoint barChart(_ barChart: HamsBarChart, barForChart indexPath: HamsIndexPath) -> HamsBarChartRect
tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int curveChart(_ curveChart: HamsCurveChart, numberOfValuesInChart chart: Int) -> Int barChart(_ barChart: HamsBarChart, numberOfValuesInChart chart: Int) -> Int

代理

HamsCurveChart HamsBarChart
curveChart(_ curveChart: HamsCurveChart, configureForCharts chart: Int) barChart(_ barChart: HamsBarChart, configureForCharts chart: Int)

安装

手动

git clone https://github.com/Haneke/HanekeSwift.git
  1. 将上述命令复制并粘贴到您的终端,它将把仓库克隆到您的磁盘上。
  2. HamsterUIKit.xcodeproj 拖放到您的项目中 项目导航器
  3. 选择您的项目,然后选择您的应用目标。打开 构建阶段 面板。
  4. 展开 目标依赖 组,并添加 HamsterUIKit.framework
  5. 点击面板左上角的 + 按钮,选择 新建复制文件阶段。将 目标 设置为 框架,并添加 HamsterUIKit.framework
  6. 当您想使用 Haneke 时,请使用 import HamsterUIKit

演示

条形图演示

曲线图演示

高级配置

柱状图

柱状图快速开始

import UIKit
import HamsterUIKit

class HelloBarChartViewController: UIViewController, HamsBarChartDelegate, HamsBarChartDataSource {
	var barChart:HamsBarChart = HamsBarChart()
	var dataSets = [CGFloat]()
    override func viewDidLoad() {
        super.viewDidLoad()
		barChart = HamsBarChart(frame: CGRect(x: 0, y: 0, width: view.frame.width, height: 300))

		barChart.delegate = self
		barChart.dataSource = self
		view.addSubview(barChart)
    }

	func barChart(_ barChart: HamsBarChart, numberOfValuesInChart chart: Int) -> Int {
		return dataSets.count
	}

	func numberOfCharts(in barChart: HamsBarChart) -> Int {
		return 1
	}

	func barChart(_ barChart: HamsBarChart, barForChart indexPath: HamsIndexPath) -> HamsBarChartRect {
		let rect = HamsBarChartRect()
		rect.value = .plain(dataSets[indexPath.column])
		rect.color = .plain(.white)
		return rect
	}

	override func viewWillAppear(_ animated: Bool) {
		super.viewWillAppear(animated)
		dataSets = [1,4,6,1]
		barChart.reloadData()
	}

	func barChart(_ barChart: HamsBarChart, configureForCharts view: Int) {

		barChart.title = "BarChart(plain)"
	}
    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
    }
}

待办

高级配置

创建者

王浩然 - 雇佣我

金志业(UI 设计师)

健康冰箱项目 - 仓鼠冰箱管理

许可

HamsterUIKit著作权归(c)2017 王浩然所有,并作为开源软件发布,遵循附带的Apache 2.0许可证

本软件按“原样”提供,不提供任何性质的保证,明示或暗示,包括但不限于适销性、适用于特定目的和无侵犯第三方知识产权的保证。在任何情况下,作者均不对因软件的使用或其他交易而引起的任何索赔、损害或其他责任负责,无论此类索赔、损害或其他责任是基于合同、侵权或其他法律理论。