小编Dav*_*est的帖子

CIFilter改变了UIImage纵横比 - SWIFT

我在我的iOS应用程序中实现了一个CIFilter来profileImages.我已添加方向以防止像素化但我正在遭受未应用于图像的宽高比 "ScaleAspectFill".相同的彩色图像具有完美的宽高比......即当我只有:

self.p1ProfilePic.image = p1Img
Run Code Online (Sandbox Code Playgroud)
  1. 我已在Storyboard中为配置文件图像指定了确切的高度和宽度.
  2. 我尝试以编程方式将.contentMode添加为.ScaleAspectFill,但没有任何效果.
  3. 我在这里错过了什么?的CGRect?

            let originalImageP1 = CIImage(image: p1Img!)
            let filter = CIFilter(name: "CIPhotoEffectTonal")
            filter!.setDefaults()
            filter!.setValue(originalImageP1, forKey: kCIInputImageKey)
            let outputImage = filter!.outputImage
            self.p1ProfilePic.image = UIImage(CIImage: outputImage!, scale: UIScreen.mainScreen().scale, orientation: .Up)
    
    Run Code Online (Sandbox Code Playgroud)

colors uiimage ios cifilter

6
推荐指数
1
解决办法
879
查看次数

UIImagePickerController:didFinishPickingMediaWithInfo没有被调用

希望你们一切都好。想知道是否有人可以帮助我理解为什么Xcode不能和我一起玩...

我将代码分为以下几部分,以便允许我从UIImagePicker中选择个人资料照片:

  1. 作品:为ImagePicker和NavigationController分配委托类
  2. 作品:实例化UIImagePicker变量
  3. 工作:加载ImagePickerViewController并启用选择图像
  4. 失败:添加了附加功能,用于关闭和完成UIImagePicker的拾取,但是都没有被调用?我做错了什么?

提前致谢!


class ProfileVC: UIViewController, UIImagePickerControllerDelegate, UINavigationControllerDelegate {
var imagePicker: UIImagePickerController!
Run Code Online (Sandbox Code Playgroud)
override func viewDidLoad() {
    super.viewDidLoad()

    imagePicker = UIImagePickerController()
    imagePicker.delegate = self
}
Run Code Online (Sandbox Code Playgroud)
@IBAction func selectPhotoPressed(sender: UITapGestureRecognizer) {
    if UIImagePickerController.isSourceTypeAvailable(.PhotoLibrary) {
        self.imagePicker.sourceType = .PhotoLibrary
    } else {
        self.imagePicker.sourceType = .Camera
    }
    imagePicker.allowsEditing = true
    imagePicker.mediaTypes = [kUTTypeImage as String]
    self.presentViewController(imagePicker, animated: true, completion: nil)
}
Run Code Online (Sandbox Code Playgroud)
func imagePickerControllerDidCancel(picker: UIImagePickerController) {
    self.dismissViewControllerAnimated(true, completion: nil)
}

func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo image: UIImage, editingInfo: [String : AnyObject]?) {
    headerView.profilePhoto.contentMode …
Run Code Online (Sandbox Code Playgroud)

uiimageview uiimagepickercontroller ios swift

6
推荐指数
2
解决办法
1万
查看次数

Google通过Firebase登录:GIDSignInDelegate不符合ViewController

我正在向我的应用程序介绍Google登录,虽然Google和Firebase文档都足够透彻,但我所做的并不充分......我仍然遇到此错误.希望这可以帮助其他人在实现他们的SDK时找到问题的解决方案....提前感谢审查这个大块的:

错误图片

以下是Firebase指南Google指南:

所以

  1. Google添加到podfile - CHECK
  2. Bridging-Header中添加了一行- CHECK
  3. 添加了GoogleService-Info.plist和捆绑包标识符以及反向客户端ID到URL方案 - CHECK
  4. App Delegate有以下内容,没有错误,但我注意到Facebook登录(正常工作)和新Google之间可能存在冲突,我不知道如何一起处理:

    代码添加到AppDelegate  - 抱歉没有在这里写,StackOverflow格式化在这个场合讨厌我

    PS我没有在这里向AppDelegate添加GIDSignInDelegate,因为我正计划让我的VC处理登录逻辑,如下所示......

  5. LoginVC ViewController代码在这里:

    class LoginVC: UIViewController, UIViewControllerTransitioningDelegate, UITextViewDelegate, UITextFieldDelegate, GIDSignInDelegate, GIDSignInUIDelegate {
    
        override func viewDidLoad() {
        super.viewDidLoad()
        let ref = Firebase(url: "https://MYAPPID.firebaseio.com")
        GIDDSignIn.sharedInstance().delegate = self
        GIDSignIn.sharedInstance().uiDelegate = self
        GIDSignIn.sharedInstance().signInSilently()  // for if the user has recently been authenticated
        }
    
    Run Code Online (Sandbox Code Playgroud)

然后,从我所看到的......应该是Google需要与Firebase交流的所有内容:

        // Implementing the required GIDSignInDelegate methods
        func googleSignIn(signIn: GIDSignIn!, didSignInForUser user: GIDGoogleUser!, withError …
Run Code Online (Sandbox Code Playgroud)

google-authentication google-login firebase swift firebase-authentication

5
推荐指数
2
解决办法
5749
查看次数