条形按钮项目未在 SWIFT 中显示
Posted
技术标签:
【中文标题】条形按钮项目未在 SWIFT 中显示【英文标题】:Bar Button item not showing in SWIFT 【发布时间】:2015-11-04 15:07:03 【问题描述】:我在我的项目中创建了一个简单的条形按钮项,但在我运行它时它没有显示。我就是这样声明的
@IBOutlet 弱变量 songSelectionBar: UIBarButtonItem!
这是我的项目的屏幕截图。我对 swift 还很陌生,所以我知道我正在做一些应该简单(或者可能不简单)的事情。
这里还有一些来自该项目的代码。此函数返回目录的内容。我的理解是我应该使用一个tableview来显示这个函数的输出。谁能指点我一个例子或告诉我如何做到这一点?谢谢
func getMusicFilesInDirectory() -> [String]
//var wavFiles:[String]
// We need just to get the documents folder url
let documentsUrl = NSFileManager.defaultManager().URLsForDirectory(.DocumentDirectory, inDomains: .UserDomainMask).first!
// now lets get the directory contents (including folders)
do
let directoryContents = try NSFileManager.defaultManager().contentsOfDirectoryAtURL(documentsUrl, includingPropertiesForKeys: nil, options: NSDirectoryEnumerationOptions())
print(directoryContents)
catch let error as NSError
print(error.localizedDescription)
// now filter the directory to extract only Wav Files
do
let directoryUrls = try NSFileManager.defaultManager().contentsOfDirectoryAtURL(documentsUrl, includingPropertiesForKeys: nil, options: NSDirectoryEnumerationOptions())
print(directoryUrls)
let wavFilesDir = directoryUrls.filter() $0.pathExtension! == "wav" .map $0.lastPathComponent!
wavFiles = ["Wav Music Files:\n" + wavFilesDir.description]
catch let error as NSError
print(error.localizedDescription)
return wavFiles
【问题讨论】:
那是工具栏还是标签栏? @Mr.T 我正在尝试创建一个 swift 中不存在的下拉菜单。所以在阅读了它之后,我被告知要使用 Bar 按钮。也许我应该使用不同的对象。不确定从一种语言转换到另一种语言时这些东西会让人感到困惑。 【参考方案1】:如果你只是声明 IBOutlet,而不是将它从 IB 中拖出来,你应该摆脱“弱”。 IB 对它的 IBOutlet 有很强的引用,所以你必须使用它的 IBOutlet with weak。 相比之下,如果你手动声明一个 IBOutlet,你必须保持对它的强引用。
【讨论】:
好点。我刚刚修好了。仍在努力思考如何让它出现。以上是关于条形按钮项目未在 SWIFT 中显示的主要内容,如果未能解决你的问题,请参考以下文章