程序问答   发布时间:2022-06-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了MVC 在文本字段/标签中显示来自 PickerView 的值的问题大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决MVC 在文本字段/标签中显示来自 PickerView 的值的问题?

开发过程中遇到MVC 在文本字段/标签中显示来自 PickerView 的值的问题的问题如何解决?下面主要结合日常开发的经验,给出你关于MVC 在文本字段/标签中显示来自 PickerView 的值的问题的解决方法建议,希望对你解决MVC 在文本字段/标签中显示来自 PickerView 的值的问题有所启发或帮助;

我的 @H_104_3@model 文件:

起初我的TimeModel

import Foundation
class TimeModel {
    var hrs = ""
    var min = ""
    var sec = ""
    var time = ""
    
    init(hrs: String,min: String,sec: String,time: String) {
        self.hrs = hrs
        self.min = min
        self.sec = sec
        self.time = time
    }
}

然后我有一个 data 文件:

import Foundation

class Data {
    
    class func getDataTime() -> [TimeModel] {
        var dataTime = [TimeModel]()
               
        dataTime.append(TimeModel(hrs: "0",min: "0",sec: "0,0",time: "Custom Time"))
        dataTime.append(TimeModel(hrs: "0",00013",time: "1/8000"))
        dataTime.append(TimeModel(hrs: "0",00016",time: "1/6400"))
        dataTime.append(TimeModel(hrs: "0",0002",time: "1/5000"))
        dataTime.append(TimeModel(hrs: "0",00025",time: "1/4000"))
        dataTime.append(TimeModel(hrs: "0",00031",time: "1/3200"))
        dataTime.append(TimeModel(hrs: "0",0004",time: "1/2500"))
        dataTime.append(TimeModel(hrs: "0",0005",time: "1/2000"))
        dataTime.append(TimeModel(hrs: "0",00062",time: "1/1600"))
        dataTime.append(TimeModel(hrs: "0",0008",time: "1/1250"))
        dataTime.append(TimeModel(hrs: "0",001",time: "1/1000"))
        dataTime.append(TimeModel(hrs: "0",00125",time: "1/800"))
        dataTime.append(TimeModel(hrs: "0",00156",time: "1/640"))
        dataTime.append(TimeModel(hrs: "0",002",time: "1/500"))
        dataTime.append(TimeModel(hrs: "0",0025",time: "1/400"))
        dataTime.append(TimeModel(hrs: "0",00313",time: "1/320"))
        dataTime.append(TimeModel(hrs: "0",004",time: "1/250"))
        dataTime.append(TimeModel(hrs: "0",005",time: "1/200"))
        return dataTime
    }
        
}

这是我的 PickerVIEw 代码:

    import UIKit

class TimeModelPicker: UIVIEw,UIPickerVIEwDatasource,UIPickerVIEwDelegate {
    
    var timeModelData = [TimeModel]()
   

        func numberOfComponents(in pickerVIEw: UIPickerVIEw) -> Int {
            return 1
        }
        
        func pickerVIEw(_ pickerVIEw: UIPickerVIEw,numberOfRowsInComponent component: int) -> Int {
            return timeModelData.count
        }

        func pickerVIEw(_ pickerVIEw: UIPickerVIEw,vIEwForRow row: Int,forComponent component: Int,reusing vIEw: UIVIEw?) -> UIVIEw {
        
            let pickerLabel = UILabel()
            pickerLabel.textcolor = UIcolor.white
            pickerLabel.text = timeModelData[row].time
            pickerLabel.Font = UIFont.boldSystemFont(ofSize: 25)
            pickerLabel.textAlignment = NSTextAlignment.center
            return pickerLabel
        }
    
        func pickerVIEw(_ pickerVIEw: UIPickerVIEw,dIDSELEctRow row: Int,inComponent component: int) {
                 
        let defaults = UserDefaults.standard
            defaults.set(row,forKey: "saveTimePicker")
        }
}

最后是来自我的 VewController 的代码:

    import UIKit

class PickerVIEwTimeController: UIVIEwController {

    @IBOutlet weak var pickerVIEwTime: UIPickerVIEw!
    @IBOutlet weak var pickerVIEwLabel: UILabel!
    @IBOutlet weak var okbutton: UIbutton!
    @IBOutlet weak var timestd: UITextFIEld!
    @IBOutlet weak var timeMin: UITextFIEld!
    @IBOutlet weak var timeSec: UITextFIEld!
        
    var datAPIckerVIEwTime: TimeModelPicker!
    
    
        
//unwind / ok button
    @IBACtion func unwindtoCalculate(_ sender: UIStoryboardSeguE){
        dismiss(animated: true,completion: nil)
    }
 
    
    overrIDe func vIEwDIDLoad() {
        super.vIEwDIDLoad()
        
        datAPIckerVIEwTime = TimeModelPicker()
        datAPIckerVIEwTime.timeModelData = Data.getDataTime()
        pickerVIEwTime.delegate = datAPIckerVIEwTime
        pickerVIEwTime.datasource = datAPIckerVIEwTime
        
        if let SELEctedRow = UserDefaults.standard.object(forKey: "saveTimePicker") as? Int {
            pickerVIEwTime.SELEctRow(SELEctedRow,inComponent: 0,animated: truE)
        }
        
        // how can i get the output from the PickerVIEw "dIDSELEctRow" in this textfIElds / label ?
        pickerVIEwLabel.text = "time"
        timestd.text = "h"
        timeMin.text = "min"
        timeSec.text = "sec"
    }

}

如何在文本字段和标签中显示来自 time h @H_104_3@min 和 sec 的值?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

大佬总结

以上是大佬教程为你收集整理的MVC 在文本字段/标签中显示来自 PickerView 的值的问题全部内容,希望文章能够帮你解决MVC 在文本字段/标签中显示来自 PickerView 的值的问题所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: