CGA_PeripheralViewController
@MainActor
class CGA_PeripheralViewController : CGA_BaseViewController
extension CGA_PeripheralViewController: CGA_UpdatableScreenViewController
extension CGA_PeripheralViewController: UITableViewDataSource
extension CGA_PeripheralViewController: UITableViewDelegate
This controls the Peripheral Information View.
-
The reuse ID that we use for creating new table cells.
Declaration
Swift
@MainActor private static let _deviceRowReuseID: String -
The ID of the segue that is executed to display Service details.
Declaration
Swift
@MainActor private static let _serviceDetailSegueID: String -
This implements a “pull to refresh.”
Declaration
Swift
@MainActor private let _refreshControl: UIRefreshControl -
This contains the device discovery data.
Declaration
Swift
@MainActor var deviceAdvInfo: RVS_BlueThoth.DiscoveryData! -
This contains the device instance, once the connection is successful. It is a weak reference.
Declaration
Swift
@MainActor weak var deviceInstance: CGA_Bluetooth_Peripheral? { get } -
This is the table that will list the discovered devices.
Declaration
Swift
@IBOutlet @MainActor weak var serviceTableView: UITableView! -
This is the “Busy” animation that is displayed while the device connects.
Declaration
Swift
@IBOutlet @MainActor weak var busyAnimationActivityIndicatorView: UIActivityIndicatorView! -
The label that displays the “CONNECTING…” message.
Declaration
Swift
@IBOutlet @MainActor weak var connectingLabel: UILabel! -
The stack view that contains all the device information.
Declaration
Swift
@IBOutlet @MainActor weak var deviceInfoTextView: UITextView! -
The label for the Services table.
Declaration
Swift
@IBOutlet @MainActor weak var servicesLabel: UILabel!
-
This sets up the accessibility and voiceover strings for the screen.
Declaration
Swift
@MainActor func setUpAccessibility()
-
This is called by the table’s “pull to refresh” handler.
When this is called, the Peripheral wipes out its Services, and starts over from scratch.
Declaration
Swift
@objc @MainActor func startOver(_: Any)
-
This simply makes sure that the UI matches the state of the device.
Declaration
Swift
@MainActor func updateUI()
-
Called after the view data has been loaded.
Declaration
Swift
@MainActor override func viewDidLoad() -
Called just before the view is to disappear (slide out, usually, or get covered). We use this to make sure that any connection timeouts are canceled.
Declaration
Swift
@MainActor override func viewWillDisappear(_ inAnimated: Bool)Parameters
inAnimatedThis is true, if the disappearance is to be animated.
-
Called just before the view is to appear.
Declaration
Swift
@MainActor override func viewWillAppear(_ inAnimated: Bool)Parameters
inAnimatedThis is true, if the disappearance is to be animated.
-
This is called just before we bring in the Service screen.
Declaration
Swift
@MainActor override func prepare(for inSegue: UIStoryboardSegue, sender inSender: Any?)Parameters
forThe segue being executed.
senderThe data we want passed into the destination.
-
This returns the number of available rows, in the given section.
Declaration
Swift
@MainActor func tableView(_ inTableView: UITableView, numberOfRowsInSection inSection: Int) -> IntParameters
inTableViewThe table view that is asking for the row count.
numberOfRowsInSectionThe 0-based section index being queried.
Return Value
The number of rows in the given section.
-
This returns a view, with the data for the given row and section.
Declaration
Swift
@MainActor func tableView(_ inTableView: UITableView, cellForRowAt inIndexPath: IndexPath) -> UITableViewCellParameters
inTableViewThe table view that is asking for the cell.
cellForRowAtThe index path (section, row) for the cell.
-
Called when a row is selected.
Declaration
Swift
@MainActor func tableView(_ inTableView: UITableView, didSelectRowAt inIndexPath: IndexPath)Parameters
inTableViewThe table view that is asking for the cell.
didSelectRowAtThe index path (section, row) for the cell.
View on GitHub