ALBusSeatView 💺
Example
To run the example project, clone the repo, and run pod install from the Example directory first.

Screenshots
| Start |
Select |
Gender Selection |
Voilà ! |
 |
 |
 |
 |
Installation
ALBusSeatView is available through CocoaPods. To install
it, simply add the following line to your Podfile:
pod 'ALBusSeatView'
Usage
// If you want to config more
// let config = ALBusSeatViewConfig()
// ALBusSeatView(withConfig: config)
let seatView = ALBusSeatView()
seatView.delegate = self
seatView.dataSource = self
view.addSubview(seatView)
//ALBusSeatViewDataSource
func seatView(_ seatView: ALBusSeatView, numberOfSeatInSection section: Int) -> Int {
return 43 // Total seat count
}
func seatView(_ seatView: ALBusSeatView, seatNumberForIndex indexPath: IndexPath) -> String {
return "10" // Seat Number
}
func seatView(_ seatView: ALBusSeatView,
seatTypeForIndex indexPath: IndexPath) -> ALBusSeatType {
return .empty
}
// Seat Types
public enum ALBusSeatType: Int {
/// Free to pick
case empty
/// Already sold by woman or man
case sold
/// Being selected
case selected
/// Already sold by woman
case soldWoman
/// Already sold by man
case soldMan
/// Not a seat. Can not be able to select
case none
}
Documentation
Config (ALBusSeatViewConfig)
Layout
| Param |
Desc |
Default |
Type |
| leftHandDrivePosition |
Left drive position status |
True |
Bool |
| marginBetweenSeats |
Margin between seats |
5.0 |
CGFloat |
Seat
| Param |
Desc |
Default |
Type |
| seatEmptyBGColor |
Empty seat color |
.white |
UIColor |
| seatSoldBGColor |
Seat color purchased by woman or man. (Common seat) |
.gray |
UIColor |
| seatSelectedBGColor |
Selected seat color |
.green |
UIColor |
| seatSoldWomanBGColor |
Seat color purchased by woman |
.red |
UIColor |
| seatSoldManBGColor |
Seat color purchased by man |
.blue |
UIColor |
| seatCornerRadius |
Seat corner radius |
8.0 |
CGFloat |
| seatBorderColor |
Seat border color |
.clear |
UIColor |
| seatBorderWidth |
Seat border width |
0 |
CGFloat |
| seatShadowColor |
Seat shadow color |
.lightGray |
UIColor |
| seatShadowRadius |
Seat shadow radius |
5.0 |
CGFloat |
| seatShadowSize |
Seat shadow size |
1,1 |
CGSize |
| seatShadowOpacity |
Seat shadow opacity |
0.7 |
Float |
| seatRemoveImage |
The remove button image for selected seat |
nil |
UIImage? |
| seatNumberFont |
Seat number label font |
.system(15) |
UIFont |
| seatNumberSelectedFont |
Selected seat number label font |
.systemBold(15) |
UIFont |
| seatNumberColor |
Seat number label color |
.black |
UIColor |
| seatNumberSelectedColor |
Selected seat number label color |
.white |
UIColor |
Hall
| Param |
Desc |
Default |
Type |
| centerHallHeight |
Bus hall height |
20 |
CGFloat |
| centerHallInfoText |
Hall information label text |
“” |
String |
| centerHallInfoTextColor |
Hall information label text color |
.black |
UIColor |
| centerHallInfoTextFont |
Hall information label text font |
.system(12) |
UIFont |
Bus Front Section
| Param |
Desc |
Default |
Type |
| busFrontImage |
Bus front image |
nil |
UIImage? |
| busFrontImageWidth |
Bus front image width |
50 |
CGFloat |
Bus Floor Section
| Param |
Desc |
Default |
Type |
| floorSeperatorWidth |
Floor section width |
50 |
CGFloat |
| floorSeperatorImage |
Floor section image |
nil |
UIImage? |
| Param |
Desc |
Default |
Type |
| tooltipText |
Gender selection tooltip title |
“Select Gender” |
String |
Author
sonifex, sonerguler93@gmail.com
License
ALBusSeatView is available under the MIT license. See the LICENSE file for more info.