ios - 以编程方式设置自定义图像大小和位置

标签 ios objective-c cocoa-touch dimension activity-indicator

我正在尝试制作自定义事件指示器并将大小和位置设置为: (x 坐标 280;y 坐标 5;高度 34;宽度 34) 我有代码:

UIImage *statusImage = [UIImage imageNamed:@"activity1.png"];
    UIImageView *activityImageView = [[UIImageView alloc]
                                      initWithImage:statusImage];

            activityImageView.animationImages = [NSArray arrayWithObjects:
                                         [UIImage imageNamed:@"activity1.png"],
                                         [UIImage imageNamed:@"activity2.png"],
                                         [UIImage imageNamed:@"activity3.png"],
                                         [UIImage imageNamed:@"activity4.png"],
                                         [UIImage imageNamed:@"activity5.png"],
                                         [UIImage imageNamed:@"activity6.png"],
                                         [UIImage imageNamed:@"activity7.png"],
                                         [UIImage imageNamed:@"activity8.png"],
                                         [UIImage imageNamed:@"activity9.png"],
                                         [UIImage imageNamed:@"activity10.png"],
                                         [UIImage imageNamed:@"activity11.png"],
                                         [UIImage imageNamed:@"activity12.png"],
                                         [UIImage imageNamed:@"activity13.png"],
                                         [UIImage imageNamed:@"activity14.png"],
                                         [UIImage imageNamed:@"activity15.png"],
                                         [UIImage imageNamed:@"activity16.png"],
                                         [UIImage imageNamed:@"activity17.png"],
                                         [UIImage imageNamed:@"activity18.png"],
                                         nil];

    activityImageView.animationDuration = 0.8;

    [activityImageView startAnimating];

    [self.view addSubview:activityImageView];

这使圈子明白我需要代码:

activityImageView.frame = CGRectMake(
                                             self.view.frame.size.width/2
                                             -statusImage.size.width/2,
                                             self.view.frame.size.height/1.2
                                             -statusImage.size.width/1.2,
                                             statusImage.size.width,
                                             statusImage.size.height);

尽管我的问题是我不明白如何使用这段代码将坐标和大小设置为我想要的。帮助非常感谢!

最佳答案

看起来你只需要做:

activityImageView.frame = CGRectMake(280, 5, 34, 34);

上面 CGRectMake 调用中的前 2 个参数是 View 左上角相对于其父 View 的 X 和 Y 坐标。其余参数是 View 的所需宽度和高度。

此外,不要忘记将 ImageView 添加到父 View ,例如

[self.view:addSubview:activityImageView];

关于ios - 以编程方式设置自定义图像大小和位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14086274/

相关文章:

ios - iOS 7 UITableViewCell 中与 AutoLayout 冲突的约束

objective-c - 从模态呈现的 Controller 中呈现 UIAlertController,该 Controller 将被关闭

ios - 更改 Storyboard后未调用选项卡栏委托(delegate)方法

iphone - 用圆形图像层标记球 - 在 iphone 中触摸缩放或移动

ios - 以编程方式从 UIView 执行 Segue

iphone - NSURL连接超时

ios - 错误 : unable to spawn process (Argument list too long) Xcode 10. 1

ios - UICollectionView 重新排序 : interactive movement or drag and drop?

ios - 无法使用Appium Desktop在真实设备上运行WebDriverAgent

ios - 调整 UIView 的大小并在 drawRect 中动态调整绘图的大小