当前位置:网站首页 > 创业 > 正文

iOS 应用内更换App图标

0 张子豪 张子豪 2025-10-15 03:56 1

在iOS10.3之后,苹果开启了新的应用内动态设置App图标的功能,现以Swift实现为例进行示范。

东西/原料

  • Xcode

方式/步调

  1. 1

    新建Xcode测试工程,将需要的图标文件导入,在这里导入三套图片,简单起见定名为1,2,3,别离为60的2x和3x图片,如下:

  2. 2

    在官方文档的诠释是CFBundleAlternateIcons字典下需要增添CFBundleIconFiles与UIPrerenderedIcon两个键对应新图标,具体的文档截图与年夜致翻译如下:

  3. 3

    选择Info.plist,在其下新增Icon files (iOS 5)字典,按照文档插手CFBundleAlternateIcons字典,具体如下:

    <dict>

    <key>CFBundleAlternateIcons</key>

    <dict>

    <key>2</key>

    <dict>

    <key>UIPrerenderedIcon</key>

    <false/>

    <key>CFBundleIconFiles</key>

    <array>

    <string>2</string>

    </array>

    </dict>

    <key>3</key>

    <dict>

    <key>UIPrerenderedIcon</key>

    <false/>

    <key>CFBundleIconFiles</key>

    <array>

    <string>3</string>

    </array>

    </dict>

    </dict>

    <key>CFBundlePrimaryIcon</key>

    <dict>

    <key>CFBundleIconFiles</key>

    <array>

    <string>1</string>

    </array>

    <key>UIPrerenderedIcon</key>

    <false/>

    </dict>

    </dict>

  4. 4

    Icon files (iOS 5)下的Primary Icon暗示初始图片设置,在这里设置为图片1,如下:

  5. 5

    图标的更改是放在按钮事务中响应的,点击界面上的按钮完当作图标的更改,具体实现代码如下:

    if #available(iOS 10.3, *) {

                

                if UIApplication.shared.supportsAlternateIcons {

                    

                    UIApplication.shared.setAlternateIconName("2", completionHandler: {(error) in

                        

                        if error != nil {

                            

                            print(error)

                        }

                    })

                }

            }

  6. 6

    编译运行下项目,然后回到模拟器的首页,可以看到模拟器当前项目中显示的图标为图片1,如下:

  7. 7

    回到App中,点击放置的按钮进行图标改换,改换当作功会弹出提醒框,点击ok,然后回到模拟器首页可以看到App图标已经改换失落,如下:

来源:百闻(微信/QQ号:9397569),转载请保留出处和链接!


本文链接:https://www.ibaiwen.com/web/283837.html

张子豪

张子豪

TA很懒,啥都没写...

@百闻娱乐 本站部分内容转自互联网,若有侵权等问题请及时与本站联系,我们将在第一时间删除处理。 | 粤ICP备2024343649号 | (地图