PFLogInViewController徽标展平

时间:2015-04-03 12:01:41

标签: ios parse-platform pfloginviewcontroller

自定义(通过子类化)PFLogInViewController;我的徽标有问题。我使用方形图片,由于某种原因变形,实际上是扁平的。

以下是代码:

UIImage *logoImage;
logoImage = [UIImage imageNamed:@"myLogo.png"]; // 152 x 152 pixels.
self.logInView.logo = [[UIImageView alloc] initWithImage:logoImage];
self.logInView.logo.layer.cornerRadius = 7.0;
self.logInView.logo.clipsToBounds = YES;

我做错了吗?或问题出在其他地方?

2 个答案:

答案 0 :(得分:1)

我遇到了同样的问题,在看完Dare的回答后,我想出了一个解决方案。

覆盖viewDidLoad

override func viewDidLoad() {
    super.viewDidLoad()
    let logo = UIImageView(image: UIImage(named: "logo"))
    logo.contentMode = .ScaleAspectFill
    logInView!.logo = logo
}

这解决了我的扩展问题。但是,根据徽标的大小,它可能会从屏幕上流出。一个肮脏的解决方法覆盖viewDidLayoutSubviews并硬编码logo对象的来源:

override func viewDidLayoutSubviews() {
    super.viewDidLayoutSubviews()
    logInView!.logo!.frame.origin.y += 200 //here I moved the logo down by 200 points
}

答案 1 :(得分:0)

设置image属性不会改变UIImageView的大小。调用sizeToFit调整视图的大小以匹配图像。您还可以使用self.logInView.logo.frame = CGRectMake(0,0,152,152)将其帧显式设置为152x152;或类似的东西。另一件要检查的是图像视图的内容模式。也许是UIViewContentModeCenter或UIViewContentModeScaleAspectFit。