2017-08-03 28 views
0

通過激發API,我正在我在這樣一個數組存儲我的冠軍一定名單..如何搜索的核心 - 數據實體的基礎上的搜索欄和屬性

self.arr1.updateValue(user, forKey: "title") and 
self.sampleArray.append(self.arr1["title"] as! String) 

現在sampleArray有我需要的所有標題,我需要根據這些標題進行過濾。我的coredata模型有一個名爲Posts的實體,屬性爲content,title

而且,目前這是怎麼了過濾..

filtered = sampleArray.filter({ (text) -> Bool in 
       let tmp: NSString = text as NSString 
       let range = tmp.range(of: searchText, options: NSString.CompareOptions.caseInsensitive) 
       return range.location != NSNotFound 
      }) 

這裏,sampleArray剛一名單和這些名字加入到一個名爲「過濾」的陣列。但問題是,點擊一行時,我們使用segue轉到webview,並且webview在段落中包含一些內容。點擊每一行顯示不同數據的網頁視圖。通過上面我正在做的過濾,當我點擊過濾後得到的行時,顯示的webview數據不正確。換句話說,我無法弄清楚我將如何傳遞正確的數組,以便顯示正確的webview內容。

我的實體「帖子」具有屬性「標題」和「內容」。如果我可以過濾帖子,然後從中獲得標題,那麼我認爲我也可以獲取內容。但我無法弄清楚這是如何完成的。

回答

0

您正在根據屬性搜索,而您將基於您的託管對象數組進行搜索。嘗試這種格式...

filtered = self.arrayOfYourManagedObjectType.filter { ($0.title?.lowercased().contains(searchText.lowercased()))! } 
0

什麼意思是適當的內容點擊過濾後的結果??。通常,您可以使用filteredArrayUsingPredicate篩選器方法篩選值列表。

+0

嗨..我編輯了我的問題。請看一看... –