首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >“ContentView_Previews”不是错误的成员类型

“ContentView_Previews”不是错误的成员类型
EN

Stack Overflow用户
提问于 2019-09-13 05:47:24
回答 5查看 4.6K关注 0票数 14

如果ContentView引用外部对象,则“ContentView_Previews”不会编译。

如果我删除所有对@ObservedObject的引用,预览就会编译。

代码语言:javascript
复制
import SwiftUI

struct ContentView: View {

    @ObservedObject var fancyTimer = FancyTimer()

    var body: some View {

    Text("\(fancyTimer.timerValue)")
       .font(.largeTitle)
    }
}

struct ContentView_Previews: PreviewProvider {
    static var previews: some View {
        ContentView()
    }
}

import Foundation
import SwiftUI
import Combine

class FancyTimer: ObservableObject {

    @Published var timerValue: Int = 0

    init() {

        Timer.scheduledTimer(withTimeInterval: 1.0, repeats: true) 
        { timer in
           self.timerValue += 1
        }
     }
   }

错误是:'ContentView‘不是'FancyTimer’的成员类型

EN

回答 5

Stack Overflow用户

发布于 2020-01-29 17:04:54

通常,问题是您创建的类、结构或枚举与您所在的模块具有相同的名称。

在这里,"FancyTimer“很可能也是您的项目的名称,这会触发错误。

尝试更改类名。

票数 29
EN

Stack Overflow用户

发布于 2019-11-17 22:00:10

在常规设置中更改显示名称和捆绑包标识符修复了我在Xcode 11.1中的这个问题。

票数 10
EN

Stack Overflow用户

发布于 2019-11-17 14:17:03

我遇到了这个问题,点击预览面板上的"Diagnostics“按钮就会发现问题所在。你的项目名为"FancyTimer“吗?如果是这样,那么发生的情况是编译器正在尝试引用FancyTimer.ContentView_Previews,但由于它不是该类的子类型而失败。基本上,项目名称和类名称之间存在冲突。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57914903

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档