Swift中如何为SF Symbol设置带透明度白色背景并居中于圆形内
给SF Symbol添加半透明白色圆形背景并居中
你可以通过两种简单方式实现需求,将圆形背景和SF Symbol组合在一起:
方法一:使用ZStack嵌套
把圆形作为底层背景,图标放在上层自动居中:
ZStack { Circle() .fill(Color.white.opacity(0.25)) .frame(width: 50, height: 50) Image(systemName: "atom") .foregroundColor(.white) .frame(width: 50, height: 50) }
方法二:使用background修饰符
直接给图标添加圆形背景,写法更简洁:
Image(systemName: "atom") .foregroundColor(.white) .frame(width: 50, height: 50) .background( Circle() .fill(Color.white.opacity(0.25)) )
说明:
- 用
foregroundColor设置SF Symbol的颜色(替代原代码里的accentColor,SwiftUI中更推荐这种方式) - 两种方法都能让图标精准居中在半透明白色圆形背景上,可根据自身代码结构选择
内容的提问来源于stack exchange,提问作者Edward Hasted
相关产品推荐
相关产品推荐

