实例成员 'count' 不能用于类型 'TweetFilterOptions.AllCases'
Posted
技术标签:
【中文标题】实例成员 \'count\' 不能用于类型 \'TweetFilterOptions.AllCases\'【英文标题】:Instance member 'count' cannot be used on type 'TweetFilterOptions.AllCases'实例成员 'count' 不能用于类型 'TweetFilterOptions.AllCases' 【发布时间】:2021-02-02 03:34:32 【问题描述】:我正在制作一个有枚举的 swiftUI 应用程序。在 View 结构中,我将获得 var n = TweetFilterOptions.AllCases.count
的案例数。但我收到一个错误:
Instance member 'count' cannot be used on type 'TweetFilterOptions.AllCases' (aka 'Array<TweetFilterOptions>'); did you mean to use a value of this type instead?
我的代码如下所示:
enum TweetFilterOptions: Int, CaseIterable
case tweets
case replies
case likes
var title:String
switch self
case .tweets:
return "tweets"
case .replies:
return "tweets and replies"
case .likes:
return "likes"
struct FilterButtonView: View
var n = TweetFilterOptions.AllCases.count // Here I am getting the error.
var body: some View
VStack(alignment:.leading)
HStack
ForEach(TweetFilterOptions.allCases, id:\.self) options in
Text(options.title)
Rectangle()
.frame(width: 300, height: 3)
.foregroundColor(.blue)
.animation(.spring())
我怎样才能摆脱这个错误并获得枚举中所有案例的数量?
【问题讨论】:
应该是 TweetFilterOptions.allCases.count 是的,它正在工作,谢谢。 【参考方案1】:使用 .allCases 而不是 .AllCases。像这样
var n = TweetFilterOptions.allCases.count
【讨论】:
以上是关于实例成员 'count' 不能用于类型 'TweetFilterOptions.AllCases'的主要内容,如果未能解决你的问题,请参考以下文章
实例成员不能用于 struct swift 之间的嵌套类型的实例
静态成员“负载”不能用于“AppDelegate”类型的实例