Change number of lines setting to use a stepper

This commit is contained in:
Maurice Parker
2019-10-21 17:19:22 -05:00
parent 48db3d6d85
commit cbf37d4ee0
4 changed files with 44 additions and 103 deletions

View File

@@ -16,7 +16,8 @@ class SettingsViewController: UITableViewController {
@IBOutlet weak var refreshIntervalLabel: UILabel!
@IBOutlet weak var timelineSortOrderSwitch: UISwitch!
@IBOutlet weak var groupByFeedSwitch: UISwitch!
@IBOutlet weak var timelineNumberOfLinesLabel: UILabel!
@IBOutlet weak var numberOfTextLinesLabel: UILabel!
@IBOutlet weak var numberOfTextLinesSteppper: UIStepper!
weak var presentingParentController: UIViewController?
@@ -46,8 +47,9 @@ class SettingsViewController: UITableViewController {
refreshIntervalLabel.text = AppDefaults.refreshInterval.description()
let numberOfLinesText = NSLocalizedString(" lines", comment: "Lines")
timelineNumberOfLinesLabel.text = "\(AppDefaults.timelineNumberOfLines)" + numberOfLinesText
let numberOfTextLines = AppDefaults.timelineNumberOfLines
numberOfTextLinesSteppper.value = Double(numberOfTextLines)
updateNumberOfTextLinesLabel(value: numberOfTextLines)
let buildLabel = NonIntrinsicLabel(frame: CGRect(x: 20.0, y: 0.0, width: 0.0, height: 0.0))
buildLabel.font = UIFont.systemFont(ofSize: 11.0)
@@ -115,11 +117,6 @@ class SettingsViewController: UITableViewController {
controller.account = sortedAccounts[indexPath.row]
self.navigationController?.pushViewController(controller, animated: true)
}
case 1:
if indexPath.row == 2 {
let timeline = UIStoryboard.settings.instantiateController(ofType: TimelineNumberOfLinesViewController.self)
self.navigationController?.pushViewController(timeline, animated: true)
}
case 2:
switch indexPath.row {
case 0:
@@ -207,6 +204,12 @@ class SettingsViewController: UITableViewController {
}
}
@IBAction func stepNumberOfTextLines(_ sender: UIStepper) {
let numberOfLines = Int(sender.value)
AppDefaults.timelineNumberOfLines = numberOfLines
updateNumberOfTextLinesLabel(value: numberOfLines)
}
@objc func contentSizeCategoryDidChange() {
tableView.reloadData()
}
@@ -231,6 +234,11 @@ extension SettingsViewController: UIDocumentPickerDelegate {
private extension SettingsViewController {
func updateNumberOfTextLinesLabel(value: Int) {
let localizedText = NSLocalizedString("Number of Text Lines: %d", comment: "Number of Text Lines")
numberOfTextLinesLabel.text = NSString.localizedStringWithFormat(localizedText as NSString, value) as String
}
func addFeed() {
let appNewsURLString = "https://nnw.ranchero.com/feed.json"