Go to file
Yonat Sharon 9a79e117b8
Create FUNDING.yml
2022-07-31 06:32:48 +03:00
.github Create FUNDING.yml 2022-07-31 06:32:48 +03:00
Example when the level is undefined or out of bounds, show question mark on battery (configurable via noLevelText). 2019-07-10 14:04:38 +03:00
Screenshots initial commit 2016-11-28 16:55:00 +02:00
Sources support iOS 13 dark mode 2019-09-15 21:36:07 +03:00
.gitignore add Package.swift, fix Interface Builder render error 2019-08-22 09:35:41 +03:00
BatteryView.podspec bump version to 1.3.9 2019-09-12 11:52:20 +03:00
CHANGELOG.md support iOS 13 dark mode 2019-09-15 21:36:07 +03:00
LICENSE.txt initial commit 2016-11-28 16:55:00 +02:00
Package.swift add Package.swift, fix Interface Builder render error 2019-08-22 09:35:41 +03:00
README.md point to the swiftui branch 2019-10-13 10:11:29 +03:00

README.md

BatteryView

Simple battery shaped UIView.

Swift Version Build Status License CocoaPods Compatible
Platform PRs Welcome

Usage

let batteryView = BatteryView(frame: smallRect)
batteryView.level = 42 // anywhere in 0...100
batteryView.lowThreshold = 25 // battery fill becomes red if level is below this threshold
batteryView.gradientThreshold = 50 // battery fill gradually changes from green to red below this threshold

SwiftUI

Use BatteryShape from the swiftui branch.

Changing Appearance

The properties below can be set in Interface Builder, in code, or through a UIAppearance proxy (e.g., BatteryView.appearance().borderColor = .gray).

Colors:

batteryView.borderColor    = .darkGray
batteryView.highLevelColor = .green
batteryView.lowLevelColor  = .red
batteryView.noLevelColor   = .gray
batteryView.noLevelText = "?" // shown over battery when the level is undefined or out of bounds

Battery Shape:

batteryView.direction = .minXEdge     // terminal facing left

batteryView.terminalLengthRatio = 0.1 // relative to battery length
batteryView.terminalWidthRatio = 0.4  // relative to battery width

batteryView.borderWidth = 2.5         // default is batteryLength / 20
batteryView.cornerRadius = 5          // default is batteryLength / 10

Installation

CocoaPods:

pod 'BatteryView'

Swift Package Manager:

dependencies: [
    .package(url: "https://github.com/yonat/BatteryView", from: "1.3.9")
]

Meta

@yonatsharon

https://github.com/yonat/BatteryView