所以我正在制作食谱日记应用程序来存储食谱。在具有detail view controller
属性的recipe
中,有table view
个成分,当您打开detail view controller
时,您可以添加成分并将其显示在{{1}上}}。 table view
core data
是一对多,因此relationship
recipe
具有entity
成分,并且该成分具有属性配方。
但是当我尝试添加NSOrderedSet
时,在numberOfRowsInSection
方法中,它告诉我在结尾放置一个return self.recipe?.ingredients.count
但是当我这样做时会抛出一个!
并且告诉我删除它。
它说
可选类型Int未展开的值
error
我也尝试了这个,但它也不起作用
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return self.recipe?.ingredients.count
}
答案 0 :(得分:1)
您尝试使用
检查可选值是否等于0if self.recipe?.ingredients.count == 0
如果值等于0,则仅返回true
。如果值等于nil
,则返回false(如果recipe
为nil
,则会返回recipes
}。
而是尝试确定您的nil
是否为if let recipe = self.recipe {
//Check if self.recipe is not equal to nil and assign the value to recipe if it is not equal to nil.
return recipe.ingredients.count
}else{
/return 0 if recipe is equal to nil
return 0
}
<img ng-src="{{ image || 'default-image.jpg' }}" />
答案 1 :(得分:0)
不确定这是否有效但请尝试
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
if let recepies = self.recipe? {
return recepies.ingredients.count
}
return 0
}
这将检查配方数组是否存在,如果存在则返回成分计数,否则返回0.