与 SCADE 中的所有其他控件一样,图像控件充当原生控件的包装器,将其部分功能公开给用户。在本教程中,我们将学习如何在应用程序内显示图像或从互联网动态下载图像。如今,我们无法想象没有图像的应用程序。尽管图像存储在 assets 文件夹中,但它们是在运行时加载的。SCADE目前仅支持出色的图像格式,如 PNG、SVG 和 JPG。

实施所需的关键属性:

  1. content: 它存储您想要显示的图像。不要忘记,它有一个Data类型。
  2. URL:图像源的相对路径。初始化此属性时,请确保已准确整理其路径。也就是说,在您拼出存储图像的文件夹之后,图像名称排在最后。请参见示例:Assets/shoe1.png.
  3. ContentPriority:此类型布尔属性指定我们在渲染图像时使用的传入源。如果false该URL字段用于获取信息以显示图像,则设置为,true如果使用内容字段,则设置为。

您可以使用三 (3) 种可能的方式将图像添加到 SCADE 中的 Android 和 iOS 应用程序:

方法一:静态图片参考

您可以通过使用Widget Palette将图像控件拖放到任何.page选择的文件(例如main.page)来简单地实现这一点。完成此操作后,使用页面右侧的 Image 属性下的Path 功能,从包含它的文件夹中查找并选择要在应用程序中显示的图像。有趣的是,使用这种方法,您的图像会自动存储在您的资产文件夹中。

看下面的结果:

方法二:使用代码添加图片

如果您想采用这种方法,您必须永远不要忘记做两件事:

  1. 确保URL字段中的路径有效。
  2. contentPriority将图像的属性值初始化为false.

请记住,与上述方法不同,您需要在此处手动将图像添加到 Assets 文件夹中,以完成在所需区域显示图像的阶段。此外,您还可以使用图像控件中内置的缩放模式进行调整并确保您的图像大小适合您的应用程序。

请参见下面的示例:


请参阅下面的代码片段:

iOS 上的输出:

Android上的输出:

方法三:利用互联网原始数据展示图片

大多数应用程序需要从远程服务器获取数据,并且下载图像是一项频繁的活动。这种方法为您提供了方便,因为您不需要在渲染之前将图像存储在应用程序中 - 您需要做的就是从 Internet 获取您选择的图像的图像地址或任何其他来源。

这个方法的主要目的是教你如何使用 swift 下载图片。首先,在主页的image2下添加第三个名为image3的图像控件。就像您在上述其他两种方法中所做的那样,使用Constraints 属性来控制其大小和位置。

请参见下面的示例:


此方法主要侧重于使用Grand Central Dispatch更新主线程上的 Image Control 。创建一个URL指向远程图像的对象是我们要做的第一件事。下一步是调用对象的init(contentsOf:) 初始化程序Data。我们使用try? 关键字并optional binding安全地访问初始化的结果,因为初始化程序正在抛出。最后,在正文中if statement,我们将从网络调用接收到的原始图像数据放入content 字段中,并将contentPriority 属性的值设置为true。

请参阅下面的代码片段:


iOS 上的输出:

Android上的输出:

最后,如果大伙有什么好的学习方法或建议欢迎大家在评论中积极留言哈,希望大家能够共同学习、共同努力、共同进步。

小编在这里祝小伙伴们在未来的日子里都可以 升职加薪,当上总经理,出任CEO,迎娶白富美,走上人生巅峰!!

不论遇到什么困难,都不应该成为我们放弃的理由!

很多人在刚接触这个行业的时候或者是在遇到瓶颈期的时候,总会遇到一些问题,比如学了一段时间感觉没有方向感,不知道该从那里入手去学习,需要一份小编整理出来的学习资料的关注我主页或者点击文末微信卡片免费领取~

这里是关于我自己的Android 学习,面试文档,视频收集大整理,有兴趣的伙伴们可以看看~

如果你看到了这里,觉得文章写得不错就给个赞呗?如果你觉得那里值得改进的,请给我留言,一定会认真查询,修正不足,谢谢。

如何在 SCADE 中的 Swift 跨平台原生应用中显示图像相关推荐

  1. MAUI中构建跨平台原生控件实现

    简介 MAUI中使用Handler体系来处理不同平台的原生控件实现, 即对应的, 如果我们想要创建控件, 只需要创建基于不同平台的Handler即可. 那么下面主要教大家如何通过创建Handler(事 ...

  2. [Swift通天遁地]七、数据与安全-(19)使用Swift实现原生的SHA1加密

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ ➤微信公众号:山青咏芝(shanqingyongzhi) ➤博客园地址:山青咏芝(https://www.cnblog ...

  3. IOS中的swift和oc关于对象模型的description方法重写

    IOS中的swift和oc关于对象模型的description方法重写 先讲OC的,oc比较重要,放在最前面. 首先创建一个cocoa Touch Class,继承NSObject, 命名Person ...

  4. JetBrains在CLion的Linux和OS X版本中引入Swift支持

    得益于苹果在12月初开源了Swift编译器和库,JetBrains在其跨平台IDE CLion的Linux和OS X版本中引入了Swift支持. \\ 为了能够使用CLion编写Swift,开发人员需 ...

  5. Gox语言——支持跨平台原生GUI开发的轻量级全功能脚本语言 - GX1

    Gox语言是以Go语言(Golang)为基础的解释型/脚本语言,它除了具有一般脚本语言所具有的编写快捷.语言简洁.易于理解等特点外,还支持其他语言所不具备的跨平台原生图形界面(GUI)开发,并且代码写 ...

  6. Microbiome:韦中组揭示根际原生动物群落是决定植物健康的关键因素

    3月3日,LorMe实验室在根际微生态与植物健康研究取得进展,成果以"Rhizosphere protists are key determinants of plant health&qu ...

  7. 原生js中如果有多个onload事件解决方案

    原生js中如果有多个onload事件解决方案 参考文章: (1)原生js中如果有多个onload事件解决方案 (2)https://www.cnblogs.com/happy-8090/p/11830 ...

  8. 如何在Pycham中安装插件,以及Pycham中常用的插件

    欢迎大家关注笔者,你的关注是我持续更博的最大动力 原创文章,转载告知,盗版必究 文章目录:如何在Pycham中安装插件,以及Pycham中常用的插件 1.在Pycham中安装插件 1.1 直接安装 1 ...

  9. unity导出工程导入到iOS原生工程中详细步骤

    一直想抽空整理一下unity原生工程导入iOS原生工程中的详细步骤.做iOS+vuforia+unity开发这么长时间了.从最初的小小白到现在的小白.中间趟过了好多的坑.也有一些的小小收货.做一个喜欢 ...

最新文章

  1. TCP三次握手和四次挥手的解释
  2. KS103超声波测距模块
  3. POJ1611基础带权并查集
  4. vs2010文件加载使用简体中文(GB2312)问题解决方案
  5. 【HihoCoder - 1831】80 Days(尺取 或 线段树)
  6. Dapp开发教程四 Asch Dapp Dice Game
  7. 我们应该如何写好HTMLCSS
  8. 【数据结构和算法笔记】图的相关概念(有向图,无向图......)
  9. python科学计算之Pandas使用(三)
  10. php做资源嗅探器,php做的端口嗅探器–可以指定网站和端口_php技巧
  11. winmail邮件服务器的搭建,搭建Winmail邮件系统
  12. js/vue 动态获取浏览器宽度/高度
  13. win7文件服务器代码,win7搭建文件服务器
  14. SpringBoot2——web开发(组件使用)
  15. unity3d RTS即时战略 鼠标点选主角移动到点击地面位置 代码
  16. 编写一个程序,输入直角三角形的两个直角边的长度a、b,求斜边c的长度。
  17. MPlayer安装和使用指南(转)
  18. WPF简单UI菜单设计
  19. 图神经网络中同质图与异质图等区别
  20. 科学家量子计算机时间倒流,腾讯内容开放平台

热门文章

  1. pandas——python
  2. PS4游戏机相比以前有什么创新吗?
  3. Fruits【水果】
  4. jQuery和CSS3商品图片预览轮播图插件
  5. 微信小程序解析HTML标签
  6. 自动化设备高压变频器维修11条注意事项
  7. Electronica慕尼黑上海电子展 | Samtec连接器精彩亮相
  8. Linux守护进程运行命令daemonize
  9. 宝塔linux面板 h5ai,宝塔面板怎么搭建h5ai文件服务器?宝塔面板Nginx安装h5ai文件服务器...
  10. Three.js教程:构建矩形平面几何体