如何设置UIVIew的宽度和高度(以像素为单位)?

问题描述 投票:-1回答:1

我正在开发一个ObjectiveC应用程序,我需要在其中设置uiview的宽度和高度(以像素为单位),然后缩放uiview等于设备宽度。以像素为单位的宽度和高度值是固定的(比如900 px x 500 px)。

目前我这样做,

    UIScreen* mainScreen = [UIScreen mainScreen];

    CGRect frame = CGRectMake(0, 0, 900.0, 500.0);
    [view setFrame:frame];
    CGFloat valScale = mainScreen.bounds.size.width/900.0;
    [view setContentScaleFactor:valScale];

但这并没有给我理想的价值。

我该怎么办?

(P.S)view.frame.size.width是以像素还是以点为单位返回宽度?

ios objective-c uiview pixel scaling
1个回答
0
投票

您好,您可以使用转换属性来缩放视图。假设您希望将UIView缩放2倍,那么您可以使用。

self.view.transform = CGAffineTransformScale(CGAffineTransformIdentity, 2, 2);

CGRect宽度和高度返回的点不是像素。一点有两个像素用于2x设备,如iPhone 6,7和三个像素用于3x设备,如iPhone 6 Plus,7 Plus。

有关更多详细信息,请参阅this Apple的文档链接。

© www.soinside.com 2019 - 2024. All rights reserved.