由于Eureka用于创建包含不同数据类型的新记录,其中一个是MediaPicker,我想知道如何呈现其viewController.
哪一排可以完成这项工作?PushRow要么ButtonRow
这是我的课程,我尝试创建它.
import UIKit
import MediaPlayer
import Eureka
public final class MusicRow<T: Equatable> : SelectorRow<T, PushSelectorCell<T>, SelectorViewController<T>>, RowType {
public required init(tag: String?) {
super.init(tag: tag)
presentationMode = .Show(controllerProvider: ControllerProvider.Callback {
return AddMusicViewController(){ _ in }
}, completionCallback: { vc in
vc.navigationController?.popViewControllerAnimated(true)
})
}
}
public class AddMusicViewController: MPMediaPickerController, MPMediaPickerControllerDelegate {
var musicPicker: MPMediaPickerController!
public var row: RowOf<MPMediaItemCollection>!
public var completionCallback : ((UIViewController) -> ())?
public override func viewDidLoad() {
super.viewDidLoad()
// Do any …Run Code Online (Sandbox Code Playgroud) 虽然我发现了类似的问题,但我无法理解它的答案.
UISwitch在一个UITableViewCell?中,我们如何阅读任何元素的变化?尝试使用协议,但自定义单元类抱怨没有初始化.使用,委托,似乎不符合视图控制器.
protocol SwitchTableViewCellDelegate {
func didChangeSwitchValue(value: Bool)
}
class SwitchTableViewCell: UITableViewCell {
var delegate: SwitchTableViewCellDelegate
var value: Bool = true
@IBOutlet weak var switchCellLabel: UILabel!
@IBOutlet weak var switchCellSwitch: UISwitch!
@IBAction func changedSwitchValue(sender: UISwitch) {
self.value = sender.on
delegate.didChangeSwitchValue(value)
}
Run Code Online (Sandbox Code Playgroud)
在cellForRowAtIndexPath,
let cell = tableView.dequeueReusableCellWithIdentifier(cellIdentifier, forIndexPath: indexPath) as! SwitchTableViewCell
cell.delegate = self
cell.switchCellLabel?.text = "Show Cloud Music"
cell.switchCellSwitch.on = userDefaults.boolForKey(cloudMusicKey)
Run Code Online (Sandbox Code Playgroud)
关于如何实现这个的任何建议?
我试图创建一个小例子说明了contentMode(scaleAspectFill)的一个UIImageView。
一切都经过编码,没有使用故事板。检查了很多有助于解释这一点的例子。但是,找不到任何适合我的要求。
请在下面找到完整的代码。
class ImageViewController: UIViewController {
let marginSpacing = CGFloat(10)
lazy var imageView1: UIImageView = {
let view = UIImageView()
view.translatesAutoresizingMaskIntoConstraints = false
return view
}()
lazy var imageView2: UIImageView = {
let view = UIImageView()
view.translatesAutoresizingMaskIntoConstraints = false
return view
}()
lazy var imageView3: UIImageView = {
let view = UIImageView()
view.translatesAutoresizingMaskIntoConstraints = false
return view
}()
lazy var imageView4: UIImageView = {
let view = UIImageView()
view.translatesAutoresizingMaskIntoConstraints = false
return view …Run Code Online (Sandbox Code Playgroud) ios ×3
swift ×3
eureka-forms ×1
swift3 ×1
uiimageview ×1
uiscrollview ×1
uiswitch ×1
uitableview ×1