Xcode是Apple的集成开发环境(IDE)。使用注意:仅将此标记用于有关Xcode IDE本身的问题,而不是用于一般的Mac或iOS编程主题。对于Mac编程问题使用[cocoa],对于iOS编程问题使用[cocoa-touch]或[iOS]或[Swift]。
我正在尝试设置 UI 测试目标的语言和区域,不幸的是它似乎不起作用。 我已经尝试过两种方法,首先: 产品 |方案|编辑方案 运行|选项 应用...
Safari Web 扩展在存档时有效,但在从 Xcode 运行时无效 - “无法找到 popup.html”错误”
我正在使用 Xcode 开发适用于 Mac 的 Safari Web 扩展,但遇到了一个似乎无法解决的令人沮丧的问题。 问题: 当我存档并导出我的应用程序并安装它时,
通过 Swift 包管理器安装 FirebaseUI-ios
我正在尝试使用 Swift 包管理器安装 FirebaseUI-iOS。我尝试过 Xcode 14.0 和 Xcode 13.4.1。我收到以下错误: [![Xcode 14.0 的错误][2]][2] [2]: 嗯...
我想通过构建配置切换应用程序名称(捆绑包显示名称)。这样,如果我通过“dev”方案构建,我的主屏幕上会得到一个名为“App Dev”的应用程序,当我构建“stage”方案时...
嗨,我是 Swift 语言的新手,谁能解释一下为什么这里 PI 符号有错误。 进口基金会 类 CalculatorBrain { 私有变量累加器 = 0.0 func setOperand(歌剧...
我的 Github 存储库中有一个 Swift 包,它已更新、新标记并推送。在 Github 中,一切都显示处于正确状态(即更新的代码是正确的)。 不过,我可以...
如何停止 Xcode 在开发者门户中自动创建证书、ID 和配置文件
在开发者门户 > 证书、ID 和配置文件中,列表中充满了测试应用程序和项目。如何阻止 Xcode 在每个项目的基础上自动创建这些?
“在 SwiftUI 中使用 Image(song.image) 时,参数类型‘String’不符合预期类型‘Decoder’”
导入 SwiftUI 导入AVKit struct Song:可识别{ 让 id = UUID() 让标题:字符串 让艺术家:String 让图像:字符串 让 mp3FileName: 字符串 } 结构 MusicView:查看...
在 Xcode 上运行 React Native 项目时出现“未提供脚本 URL”错误
我一直在关注 https://reactnative.dev/docs/getting-started-without-a-framework 中的 React Native 设置指南 并按照这里设置环境https://reactnative.dev/docs/s...
在 Xcode 中将 lex 和 bison 与 swift 一起使用
我正在致力于将 Swift 与在 Xcode 16.1 项目中使用 lex 和 bison 生成的简单解析器集成。 下面是我当前的代码: 计算l %{ #include“calc.tab.h” #包括 我正在致力于将 Swift 与在 Xcode 16.1 项目中使用 lex 和 bison 生成的简单解析器集成。 下面是我当前的代码: calc.l %{ #include "calc.tab.h" #include <stdlib.h> %} %% [0-9]+ { yylval.num = atoi(yytext); return NUMBER; } [ \t\n]+ ; "+" return '+'; "-" return '-'; "*" return '*'; "/" return '/'; "(" return '('; ")" return ')'; . return yytext[0]; %% calc.y %{ #include <stdio.h> #include <stdlib.h> #include "calc.h" void yyerror(const char *s); int result; %} %union { int num; } /* Define tokens with types */ %token <num> NUMBER %left '+' '-' %left '*' '/' /* Use %type to declare the type of non-terminal symbols */ %type <num> expr %% expr: expr '+' expr { $$ = $1 + $3; } | expr '-' expr { $$ = $1 - $3; } | expr '*' expr { $$ = $1 * $3; } | expr '/' expr { $$ = $1 / $3; } | '(' expr ')' { $$ = $2; } | NUMBER { $$ = $1; } ; %% int main(void) { return yyparse(); } void yyerror(const char *s) { fprintf(stderr, "Error: %s\n", s); } calc.h #ifndef CALC_H #define CALC_H extern int yylex(void); extern int yyparse(void); void yyerror(const char *s); int parseExpression(void); #endif calc.c #include "calc.h" #include <stdio.h> int result; int parseExpression(void) { if (yyparse() == 0) { return result; } else { return -1; // Error } } void yyerror(const char *s) { fprintf(stderr, "Error: %s\n", s); } 桥接标头.h #import "calc.h" 这是一个调用解析器的简单 SwiftUI 视图: struct ContentView: View { @State var result: Int32 = 0 var body: some View { VStack { Text("\(result)") Button("Calculate") { let expression = "3 + 5 * (10 - 4)" result = evaluate(expression: expression) print("Result: \(result)") } } .padding() } func evaluate(expression: String) -> Int32 { expression.withCString { cString in freopen("/dev/stdin", "r", stdin) fputs(cString, stdin) } return parseExpression() } } 我从终端手动运行这些命令: flex -o lex.yy.c calc.l bison -d calc.y -o calc.tab.c 当我在Xcode中编译项目时,遇到以下错误,但我无法解决: Undefined symbols for architecture arm64: "_yywrap", referenced from: _yylex in lex.yy.o ld: symbol(s) not found for architecture arm64 clang: error: linker command failed with exit code 1 (use -v to see invocation) 有人可以提供一些指导或指出我正确的方向吗? 我的问题不是重复现有问题,只是添加选项: %option noyywrap 按照建议并没有解决问题。事实上,由于重复的变量和函数定义,它引入了多个错误。 这是因为在 Xcode 项目中同时包含 .l (Flex) 和 .y (Bison) 文件会在幕后自动触发 Flex 和 Bison。 解决方案是更新分词器和解析器定义以避免引用不可用的 calc.tab.h。 以下是最终的工作文件: calc.l %option noyywrap %{ #include <stdio.h> #include <stdlib.h> enum { NUMBER = 258, PLUS, MINUS, MULTIPLY, DIVIDE, LEFTPAR, RIGHTPAR }; union YYSTYPE { int num; }; extern union YYSTYPE yylval; extern int expression_value; extern void yyerror(const char *s); %} %% [0-9]+ { yylval.num = atoi(yytext); return NUMBER; } [ \t\n]+ ; "+" return PLUS; "-" return MINUS; "*" return MULTIPLY; "/" return DIVIDE; "(" return LEFTPAR; ")" return RIGHTPAR; . return yytext[0]; %% calc.y %{ #include <stdio.h> #include <stdlib.h> void yyerror(const char *s); int yylex(void); int expression_value; %} %union { int num; } %token <num> NUMBER %token PLUS %token MINUS %token MULTIPLY %token DIVIDE %token LEFTPAR %token RIGHTPAR %left PLUS MINUS %left MULTIPLY DIVIDE %type <num> expr %% input: | expr { expression_value = $1; } ; expr: expr PLUS expr { $$ = $1 + $3; } | expr MINUS expr { $$ = $1 - $3; } | expr MULTIPLY expr { $$ = $1 * $3; } | expr DIVIDE expr { $$ = $1 / $3; } | LEFTPAR expr RIGHTPAR { $$ = $2; } | NUMBER { $$ = $1; } ; %% void yyerror(const char *s) { fprintf(stderr, "Error: %s\n", s); } calc.h #ifndef CALC_H #define CALC_H int evaluate_expression(const char *expression, int *result); #endif calc.c #include "calc.h" #include <stdio.h> extern int yyparse(void); extern void yy_scan_string(const char *str); extern void yylex_destroy(void); extern int expression_value; int evaluate_expression(const char *expression, int *result) { yy_scan_string(expression); // Parse and evaluate the expression int status = yyparse(); yylex_destroy(); if (status == 0) { *result = expression_value; } return status; } 这是调用解析器的 Swift(UI) 代码: struct ContentView: View { @State var expression: String = "" @State var result: Int32? var body: some View { VStack { TextEditor(text: $expression) if let result { Text("\(result)") } Button("Calculate") { result = evaluate(expression: expression) } } .padding() } func evaluate(expression: String) -> Int32? { var result: Int32 = 0 let status = expression.withCString { cString in evaluate_expression(UnsafeMutablePointer(mutating: cString), &result) } if status != 0 { // The parse returned an error return nil } return result } } 请注意,调用evaluate_expression函数需要Swift-Bridging.h文件。
我使用 Swift 和 iOS 已有好几个月了。我熟悉许多做事的方法,但我还不够好,我不能不看就直接写下来。我已经
我想查找某个 URL 的 Google 页面排名。我用 Google 搜索找到 Google 排名 API,但没有找到任何合适的解决方案。谁能指导我如何在 Objective-C 中查找 Google 页面排名? 示例:去...
我正在尝试在 Xcode (8 beta 2) 的命令行工具中获取资源的路径。这是我所得到的: 资源 file.xyz 已被拖入项目并且目标成员资格匹配...
我有一个包含来自 API 的数据的表格视图。 每个细胞都有几个属性。我想要的是通过所选按钮(这三个矩形)对单元格进行排序。 我不知道具体该怎么做。我想我
针对 iOS 的 Flutter 构建:Xcode 构建 + DVTDeviceOperation 输出错误:遇到与 DVTBuildVersion 不兼容的构建号“”
当我尝试将 Flutter 应用程序构建到 ios 时,我收到此错误 正在运行 Pod 安装... 运行 Xcode 构建... Xcode 构建完成。 111.3秒 无法构建 iOS 应用程序 错误
我已通过 https://appstoreconnect.apple.com/ 作为管理员(具有开发人员权限)添加到 Apple 开发计划(组织) 访问证书、标识符和配置文件已
使用 CocoaPods 进行 Unity-iPhone 集成时遇到问题,而我的本机应用程序使用 Swift Package Manager,两者都具有重复的依赖项,从而导致崩溃。 我正在尝试整合“Unit...
我定义了一个UIView“RowOfThree”,其中有3个标签。我还定义了一个 UIView“Table”,其中有许多“Row”类型的对象。 以下代码位于
不使用 XCode / Objective-C 进行 OS X 开发?
我想为 OS X 构建一个电子邮件客户端原型。出于个人原因,我想使用 Objective-C 和 XCode 之外的其他东西来构建它(我不介意仅使用 XCode 来编译鳕鱼...
pod 安装失败,并显示“无法加载此类文件 - xcodeproj”
我最近更新到了 ruby v 2.6 升级后,我在安装 pod 时遇到问题,并出现以下错误 回溯(最近一次调用最后一次): 7:来自 /usr/local/bin/pod:23:in `' ... 我最近更新到 ruby v 2.6 升级后,我在安装 pod 时遇到问题,并出现以下错误 Traceback (most recent call last): 7: from /usr/local/bin/pod:23:in `<main>' 6: from /usr/local/bin/pod:23:in `load' 5: from /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.8.4/bin/pod:36:in `<top (required)>' 4: from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in `require' 3: from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in `require' 2: from /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.8.4/lib/cocoapods.rb:2:in `<top (required)>' 1: from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in `require' /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in `require': cannot load such file -- xcodeproj (LoadError) 8: from /usr/local/bin/pod:23:in `<main>' 7: from /usr/local/bin/pod:23:in `load' 6: from /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.8.4/bin/pod:36:in `<top (required)>' 5: from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in `require' 4: from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in `require' 3: from /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.8.4/lib/cocoapods.rb:2:in `<top (required)>' 2: from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:34:in `require' 1: from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:130:in `rescue in require' /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:130:in `require': cannot load such file -- xcodeproj (LoadError) 我已经尝试过sudo gem install cocoapods但没有帮助。 有人遇到类似问题并找到解决方案吗? 似乎你需要安装 gem xcodeproj,在终端中运行: gem install xcodeproj 看这里 只有这个对我有用: sudo gem install cocoapods --user-install sudo gem install cocoapods && pod install 安装 RVM