当前位置: 首页 > 面试题库 >

如何允许用户使用Swift选择图像?

田修为
2023-03-14
问题内容

我正在用Swift编写我的第一个iOS应用程序(仅iPhone)。主应用程序视图应允许用户从相册中选择图像。

我找到了以下 ViewController.swift 示例代码:

class ViewController: UIImagePickerController, UINavigationControllerDelegate, UIImagePickerControllerDelegate  {

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }

    func tableView(tableView: UITableView!, didSelectRowAtIndexPath indexPath: NSIndexPath!) {

        var imagePickerController = UIImagePickerController()
        imagePickerController.delegate = self
        imagePickerController.sourceType = UIImagePickerControllerSourceType.SavedPhotosAlbum
        imagePickerController.allowsEditing = true
        self.presentViewController(imagePickerController, animated: true, completion: { imageP in

        })
    }


    func imagePickerController(picker: UIImagePickerController!, didFinishPickingImage image: UIImage!, editingInfo: NSDictionary!) {
        let selectedImage : UIImage = image
        println(selectedImage)
    }

}

并具有以下View Controller Scene-

View Controller
 - Top Layout Guide
 - Bottom Layout Guide
 - View
   - Image View
First Responder
Exit

但是,当我启动该应用程序时,仅显示黑屏。我做错了什么?我发现的另一个示例代码是在Objective-C中,这对我没有帮助。


问题答案:

如果只想让用户使用UIImagePickerController选择图像,请使用以下代码:

import UIKit


class ViewController: UIViewController, UINavigationControllerDelegate, UIImagePickerControllerDelegate {

    @IBOutlet var imageView: UIImageView!
    @IBOutlet var chooseBuuton: UIButton!
    var imagePicker = UIImagePickerController()

    @IBAction func btnClicked() {

        if UIImagePickerController.isSourceTypeAvailable(.savedPhotosAlbum){
            print("Button capture")

            imagePicker.delegate = self
            imagePicker.sourceType = .savedPhotosAlbum
            imagePicker.allowsEditing = false

            present(imagePicker, animated: true, completion: nil)
        }
    }

    func imagePickerController(picker: UIImagePickerController!, didFinishPickingImage image: UIImage!, editingInfo: NSDictionary!){
        self.dismiss(animated: true, completion: { () -> Void in

        })

        imageView.image = image
    }
}


 类似资料:
  • 我看到过各种帖子描述JPA EntityGraph允许在运行时选择图表。我不完全清楚这指的是什么。 出于诚意和尊重,我想参考这篇有用的文章:https://www.baeldung.com/jpa-entity-graph.(大多数JPA用户可能已经看过了。) 文章引用- EntityGgraph允许对我们想要检索的相关持久性字段进行分组,并允许我们在运行时选择图形类型。 并在结论部分再次巩固上述

  • 问题内容: 在下面的示例中,我想创建一个仅适用于带有文本“ Blockhead”的标头的CSS规则。 我可以使用括号吗?如果没有,我有什么选择? 问题答案: 不,括号不是CSS选择器中的有效运算符。他们是保留给功能符号,如,和。 无论如何,您不需要它们。本身就可以正常工作。 这是因为选择器和组合器的序列始终是线性读取的。组合器没有任何优先级。选择器可以解释为 选择 紧跟在class类元素之后的元素

  • 我正在尝试添加一个“个人资料图片”到一个用户的个人资料页。基本上,我有它到那里他们可以选择一个文件从他们的计算机上传到应用程序,它将显示他们的个人资料图片。但它不工作,我认为它目前不能显示它,但生成它不正确。 null

  • 我有一个要求,我必须允许我所有的普通用户模仿他们选择的用户。 我一直没能做到这一点。这就是我到目前为止所做的: > 将以下属性添加到portal-ext.properties: 为了模仿的目的创造了一个角色 我不需要我的用户看到他们可以模拟的用户列表,我只是想在存在于url中(如果您是管理员,则不起作用)。 当我尝试使用用户A模拟用户B时,什么都没有发生。我在tomcat日志中发现了这个错误: (

  • 我尝试单击选择菜单并选择元素: 我的方式: 结果,我得到了这个异常: 组织.openqa.硒.无效选择器例外: 无效选择器: 不允许复合类名