• Stars
    star
    52
  • Rank 541,446 (Top 11 %)
  • Language
    Swift
  • License
    MIT License
  • Created over 7 years ago
  • Updated 8 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Simple battery shaped UIView

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 Usage

BatteryShape(level: $level)

Changing Appearance

The properties below can be set in Interface Builder, in code, or through a UIAppearance proxy (e.g., BatteryView.appearance().borderColor = .gray). When using SwiftUI you can set them in the BatteryShape initializer .

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.4.3")
]

Meta

@yonatsharon

https://github.com/yonat/BatteryView

More Repositories

1

MultiSlider

UISlider clone with multiple thumbs and values, range highlight, optional snap intervals, optional value labels, either vertical or horizontal.
Swift
436
star
2

StepProgressView

Step-by-step progress view with labels and shapes. A good replacement for UIActivityIndicatorView and UIProgressView.
Swift
365
star
3

MultiSelectSegmentedControl

UISegmentedControl remake that supports selecting multiple segments, vertical stacking, combining text and images.
Swift
298
star
4

RadioGroup

The missing iOS radio buttons group.
Swift
191
star
5

SelectionList

Simple single-selection or multiple-selection checklist, based on UITableView
Swift
116
star
6

MultiToggleButton

Multiple state tap-to-toggle UIButton (like old camera flash button)
Swift
83
star
7

CheckmarkCollectionViewCell

UICollectionViewCell with checkbox when it isSelected and empty circle when not - like Photos.app "Select" mode.
Swift
64
star
8

CameraBackground

Show camera layer as a background to any UIView
Swift
63
star
9

BadgeLabel

Simple animatable badge, based on UILabel and using CALayer
Objective-C
49
star
10

MockImagePicker

Mock UIImagePickerController for testing camera based UI in simulator
Swift
22
star
11

ContactsChangeNotifier

Which contacts changed outside your iOS app? Better CNContactStoreDidChange notification: Get real changes, without the noise.
Swift
14
star
12

EditableList

Simple List of UITextField-s based on UITableViewController
Objective-C
13
star
13

SweeterSwift

Extensions and syntactic sugar to enrich the Swift standard library, iOS frameworks, and SwifterSwift.
Swift
11
star
14

YONAutoComplete

Add auto-completion to a UITextField
Objective-C
9
star
15

MiniLayout

Minimal AutoLayout convenience layer. Program constraints succinctly. ⚠️ Moved into https://github.com/yonat/SweeterSwift
Swift
8
star
16

AvailableHapticFeedback

Unified haptic feedback interface for all subclasses of UIFeedbackGenerator, with availability checks for iOS 9.
Swift
8
star
17

EasyBackgroundRefresh

Easy background refresh registration, scheduling, execution, and completion. BGTaskScheduler for the lazy.
Swift
8
star
18

SwiftQuality

Common configuration files for SwiftLint and SwiftFormat
Ruby
5
star
19

smart_ptr

Simple C++ Smart Pointer Classes
C
3
star
20

versionit

Simple bash script to change Xcode project version and build number, create git tag, and update podspec.
Shell
3
star
21

pointainer

STL Extensions for containers of pointers
C++
2
star
22

Blinker

mac app that reminds you to blink by displaying animated blinking eyes on your screen at regular intervals
Swift
2
star
23

DirectoryUploader

Automatically upload all files saved in source directory, and then delete the uploaded files.
Swift
1
star