小编gpi*_*ler的帖子

如何重置单例实例?

我正在创建一个像这样的单例实例

static let currentUser = User()

private override init() {
    super.init()
    // custom initialisation
}
Run Code Online (Sandbox Code Playgroud)

如何重置此实例或重置为nil?

ios swift

13
推荐指数
3
解决办法
1万
查看次数

无法从Localizable.strings文件中检索本地化字符串

我无法从Localizable.strings文件中获取正确的本地化德语字符串.我的应用设置如下所示

  • Main.storyboard

    • Main.storyboard(Base)
    • Main.strings(德语) - >这些字符串被正确翻译
  • Localizable.strings

    • Localizable.strings(英文)
    • Localizable.strings(德语) - >无法获取这些字符串

在应用程序内部我试图得到像这样的字符串

NSString *item = NSLocalizedString(@"Group expenses", @"Menu item");
Run Code Online (Sandbox Code Playgroud)

Localizable.strings(德语)文件如下所示

/* Menu item */
"Group expenses" = "Gruppenausgaben";
Run Code Online (Sandbox Code Playgroud)

当我item总是得到英文字符串后设置断点,但资源的路径似乎正确NSString *path = [[NSBundle mainBundle] pathForResource:[[NSLocale preferredLanguages] objectAtIndex:0] ofType:@"lproj"]; 给了我:/data/Containers/Bundle/Application/5E3ED6BF-71E1-4C60-9EDA-610C9A32B8EF/MyApp.app/de.lproj

我也已经本地化了字符串文件

在此输入图像描述

在此输入图像描述

它也包含在Copy Bundle Resources中

在此输入图像描述

我在stackoverflow上尝试了几个不同问题的答案,比如删除app并做一个干净的(shift + cmd + k),设置应用程序语言 Edit Scheme,...

localization objective-c localizable.strings ios swift

10
推荐指数
1
解决办法
5251
查看次数

仅隐藏 UISplitViewController 中的 .supplementary 列

我已经设置了一个UISplitViewControllerwith style .tripleColumn

let splitViewController = UISplitViewController(style: .tripleColumn)
preferredDisplayMode = .twoBesideSecondary
preferredSplitBehavior = .tile
Run Code Online (Sandbox Code Playgroud)

对于第一个菜单项“我的故事”,它需要三列。但是,对于所有其他菜单项,它应该只是主列(侧边栏)和可见的内容。该.supplementary列应该被隐藏。

在此输入图像描述

例如,当单击“我的统计信息”时,以下代码会隐藏.primary(侧边栏)和.supplementary列,仅显示“我的统计信息”。

splitViewController?.showDetailViewController(stats, sender: nil)
splitViewController?.hide(.supplementary)
Run Code Online (Sandbox Code Playgroud)

如何切换到样式.twoColumn并且仅使.primary.secondary列可见?

ios swift ipados

10
推荐指数
1
解决办法
1853
查看次数

具有多个标签的自定型单元格不显示多行标签

我的静态表视图单元格中有三个标签,中间标签应该是多行标签.

我正在设置这两行 viewDidLoad()

self.tableView.estimatedRowHeight = 130.0
self.tableView.rowHeight = UITableViewAutomaticDimension
Run Code Online (Sandbox Code Playgroud)

故事板看起来像这样

在此输入图像描述

以下是每个子视图的约束

顶部标签,中间标签,底部标签,按钮

在此输入图像描述

我还将中间标签的行数设置为0.但是它只显示一行而不是多行.我想它必须与内容拥抱或内容压缩优先级有关,或者因为我正在使用UITableViewController静态单元格.

UPDATE

如果我将中间标签的垂直压缩阻力优先级更改为751并将垂直内容拥抱优先级更改为250,则标签显示多行,但单元格不会调整大小,因此顶部和底部标签现在位于单元格之外.

更新2

我刚刚创建了一个示例项目,事实证明它可以按预期使用动态单元格,但不能使用静态单元格.您可以在此处下载示例项目:https://dl.dropboxusercontent.com/u/67692950/ResizingCell.zip

uitableview ios uistoryboard swift xcode6

9
推荐指数
1
解决办法
2419
查看次数

Swift 图表中 y 轴的固定范围

我希望我的 y 轴始终显示 0-60 的范围,即使存在不代表完整范围的数据集。例如,如果我显示的数据集只有 10 和 40,则 y 轴范围仅为 0-40,而不是 0-60。

有什么想法如何为 Swift Charts (iOS 16) 配置固定范围的 y 轴吗?

Chart { 
        ForEach(model.series.entries, id: \.weekday) { element in
            BarMark(
                x: .value("Day", element.weekday, unit: .day),
                y: .value("Feeling", element.value)
            )
        }
    }
    .chartXAxis {
        let unit: Calendar.Component = model.resolution == .yearly ? .month : .day
        
        AxisMarks(values: .stride(by: unit, count: 1)) { _ in
            AxisGridLine()
            AxisValueLabel(format: .dateTime.weekday(.narrow), centered: true)
        }
    }
Run Code Online (Sandbox Code Playgroud)

值为 40 和 50 的内容

值为 10 和 40 的内容

charts swiftui ios16

9
推荐指数
1
解决办法
7867
查看次数

链接到Cocoapod的静态框架在主项目中找不到

我正试图通过Carthage向我的私人Cocoapod项目添加一个静态框架(Moya).

我的目标是在我的私人Cocoapod(SwiftModel)中包含Moya作为静态框架,并在我的主项目中使用Moya(因为SwiftModel对它有依赖性).

我通过执行以下步骤将Moya添加到我的框架中:

  1. podspec文件中的链接框架

    s.vendored_frameworks = 'SwiftModel/Carthage/Build/iOS/Moya.framework'

  2. 将Moya添加到私有框架(Link Binary With Libraries)

在此输入图像描述

所以在我的Pods项目中它看起来像这样:

在此输入图像描述

尝试添加"框架头搜索路径"的路径没有做任何更改.我试图在主项目和pods项目中添加它.

当只是建造私人吊舱时,一切正常,Moya被认可.但是,如果我想构建主项目(包括我的私人pod),我总是会收到此错误:

框架未找到Moya for architecture arm64

在此输入图像描述

cocoapods swift carthage moya

8
推荐指数
1
解决办法
723
查看次数

Parse.com - 如何刷新用户的信息

当我在Parse后端更改例如bool时,我无法在我的iOS应用程序中检索此值.请参阅以下屏幕截图,其中第一个bool用户对象已手动更改,第二个已从应用程序更改.

在此输入图像描述

第一个不起作用,而一个(从应用程序更改)确实有效.我正在使用以下代码获取值:

[[PFUser currentUser] objectForKey:@"is_pro"]
Run Code Online (Sandbox Code Playgroud)

在第一种情况下,返回对象总是nil(我手动更改了bool).

ios parse-platform

7
推荐指数
1
解决办法
3660
查看次数

CFBundleVersion必须是以句点分隔的列表

我将构建上传到itunes connect时遇到了问题.我总是得到以下错误

在此输入图像描述

我的一般项目设置如下所示

在此输入图像描述

我也在我的项目中使用cocoapods,但之前从未收到此错误,我已经上传了几个版本.我不知道那个奇怪的数字[1443188838-89]来自哪里.

同样在信息选项卡上,捆绑版本对我来说很好

在此输入图像描述

以及info.plist作为源代码看起来不错

在此输入图像描述

任何帮助深表感谢.

xcode itunesconnect ios swift

7
推荐指数
1
解决办法
1698
查看次数

使用 NSPersistentCloudKitContainer 时预填充核心数据存储的最佳方法是什么?

我遇到以下场景,我从 JSON 文件解析对象并将它们存储到我的核心数据存储中。现在我正在使用NSPersistentCloudKitContainer,当我在不同的设备上运行该应用程序时,它还会解析 JSON 文件并将对象添加到核心数据中。这会导致重复的对象。

现在我想知道是否有:

  • 如果我可以检查实体是否已远程存在,这是一种简单的方法吗?
  • 还有其他方法可以避免对象在 CloudKit 中保存两次吗?
  • 从远程获取数据完成时收到通知吗?

core-data swift cloudkit ios13

7
推荐指数
1
解决办法
1970
查看次数

如何在Interface Builder中旋转UIImageView?

是否可以从XCode中在Interface Builder中旋转UIImageView?就像我可以在Photoshop中一样,我可以在那里缩放和旋转图像.

我知道代码是可行的,但有没有办法在界面构建器中执行此操作?

iphone xcode rotation interface-builder uiimageview

6
推荐指数
3
解决办法
1万
查看次数