• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

ios - 在一个uiview中合并多个 View

[复制链接]
菜鸟教程小白 发表于 2022-12-12 10:38:39 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

在我的应用中,我要拍照并在图片上添加以下信息,这些信息是:

  • 天气预报
  • 温度
  • GPS 定位

到目前为止,我通过使用 GPS 和网络服务进行天气预报(打开天气图)获得了这些信息。我是这样做的:

  1. 我用标准的 UIImagePicker 拍照
  2. 我在界面上放了一个按钮来向用户展示图片

当用户按下按钮时,应用程序会打开一个新的 ViewController,我在其中显示刚刚拍摄的照片,并添加了 2 个 UILabel(一个用于温度,一个用于位置)和一个 UIImageView(用于显示有关天气预报的图标)。我直接在 StoryBoard 上绘制的 UILabels 和 UIImageView。 现在我需要将图片与 2 UILabel 和 UIImageView 合并,有一种方法可以将它们合并到一个 UIImageView 中吗? 我必须这样做以保存带有天气预报和位置的图片

更新

我创建了一个按钮来保存带有标签和 ImageView 的图片以及我编写的代码:

- (IBAction)buttonSavePictureUIButton *)sender {
[self.imageView addSubview:self.labelPlace];
[self.imageView addSubview:self.labelTemperature];
[self.imageView addSubview:self.imageViewWeather];

UIGraphicsBeginImageContext(self.imageView.bounds.size);
[self.imageView.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *finalImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentationDirectory, NSUserDomainMask, YES);
NSString *filePath = [[paths objectAtIndex:0] stringByAppendingPathComponent:self.filename];

[UIImageJPEGRepresentation(finalImage, 1) writeToFile:filePath atomically:YES];

}

但是当我去 Documents 目录中查看是否正确保存图片时,我没有找到它。



Best Answer-推荐答案


是的,您可以通过捕获它们轻松地做到这一点。按照步骤操作。

  1. 在 Storyboard 中创建一个小的父 View ,将您要捕获的所有控件放在一起。创建一个导出说 captureView.

  2. 需要时调用以下函数。

    -(void)capture{
    
          UIGraphicsBeginImageContext(self.captureView.bounds.size);
          [self.captureView.layer renderInContext:UIGraphicsGetCurrentContext()];
          UIImage *capturedImage = UIGraphicsGetImageFromCurrentImageContext();
          UIGraphicsEndImageContext();
    
          //FINAL OUTPUT
          self.imageView.image=capturedImage;
    }
    

干杯。

关于ios - 在一个uiview中合并多个 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24526984/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap