SwiftUI报错:‘some View’类型的值无‘resizable’成员
SwiftUI报错:
Value of type 'some View' has no member 'resizable' 解决方法 这个报错的核心原因是视图修饰符的调用顺序错误:
Image("home_illustration")是Image类型,自带resizable()方法- 你先调用了
.padding(.bottom,60),这个修饰符返回的是some View通用视图类型,不再是Image,所以后续调用resizable()会找不到该方法
修正后的代码:
import SwiftUI struct ContentView: View { var body: some View { Image("home_illustration") .resizable() // 先调用Image专属的resizable方法 .padding(.bottom, 60) // 再添加padding修饰符 } } struct ContentView_Previews: PreviewProvider { static var previews: some View { ContentView() } }
额外提示:
- SwiftUI的视图修饰符是链式调用,每个修饰符都会返回新的视图类型,需注意调用顺序:先调用原视图的专属方法,再调用通用视图修饰符
- 如果需要控制图片尺寸,通常搭配
.scaledToFit()或.frame()使用,示例:
Image("home_illustration") .resizable() .scaledToFit() .frame(height: 200) .padding(.bottom, 60)
内容的提问来源于stack exchange,提问作者helloimbrando
相关产品推荐
相关产品推荐

