月別アーカイブ: 2018年3月

NSFetchedResultsController in iOS 10 Swift 3

平成30年3月24日(土曜日)

[iOS 10] CoreDataの変更内容をまとめてみました。

以下は、未解決!!

error
Study CoreData 14 ~目に見えるしあわせ~


2018-03-24 13:54:18.888127+0900 csv2core[4392:207798] [error] error: (NSFetchedResultsController) A section returned nil value for section name key path 'category'. Objects will be placed in unnamed section
CoreData: error: (NSFetchedResultsController) A section returned nil value for section name key path 'category'. Objects will be placed in unnamed section

let request = NSFetchRequest(entityName:"NasaPicture")  
request.predicate = Predicate(format: "isPagedResult == YES")  

request.sortDescriptors = [SortDescriptor(key: "date", ascending: false)]  

fetchedResultsController = NSFetchedResultsController(fetchRequest: request, managedObjectContext: moc, sectionNameKeyPath: nil, cacheName: nil)  

How to initialize a NSFetchedResultsController in iOS 10 Swift 3

SWIFT4 FROM SWIFT2 MEMO

平成30年3月24日(土曜日)

TROUBLE ETC

① SEARCHBAR – TABLEVIEW (問題は、CACHE)
② forecasterplus (COLLECTIONVIEWなので上記のトラブルは無し)

searchcontroller(swift4)

平成30年3月23日(金曜日)

以下リンク参考OK!!
但し、UISearchResultsUpdating デリゲート追加と同時に以下も追加(追加するまでerror!!)
func updateSearchResults(for searchController: UISearchController) {}

①テーブル
tableView.tableHeaderView = searchController.searchBar
②コレクション
collectionView.addSubview(searchController.searchBar)
③ナビゲーションバー
navigationItem.searchController = searchController
又は、
self.navigationItem.titleView = searchController.searchBar

[iOS 11] iOS 11で追加されたUINavigationItemのsearchControllerプロパティを使ってSearchBarをナビゲーションインターフェースに統合する

【Swift3】UITableViewで使う、シンプルな検索バーのサンプル2選

Storyboard を使わず UICollectionView に UISearchBar を追加したメモ

Section Header Collection Reusable View

平成30年3月22日(木曜日)

以下二点により表示OK!!

collectioncontrollerを使用せずとしたので、パーツをドラッグし、構築。
この中での注意点は、overrideを外すこと、UICollectionReusableViewクラスを作成すること。label等のリンクをした上で、
以下を参考にして動作。

UICollectionViewのHeaderカスタマイズいろいろ

Ambiguous reference to member ‘collectionView(_:numberOfItemsInSection:)’ when reloading collection view data

CORE DATA new Knowledge

平成30年3月22日(木曜日)

雛形master-detailを作成すると、自動的に作成されるコードの中で、
以下の部分に気付く。。。。

@objc
func insertNewObject(_ sender: Any) {
let context = self.fetchedResultsController.managedObjectContext
let newEvent = Event(context: context)

// If appropriate, configure the new managed object.
newEvent.timestamp = Date()

要は、entity名(context: context)にて、
newEvent.timestampのようにアクセス可。
いろいろと教えられる事多しなこの頃!!!!!!

上について、更にcoredata作成についても、問題無く格納できることを確認。

注意点:まれにentity名がundefinedとなるが、xcode再立ち上げにて良好となる。

論理演算子

平成30年3月22日(木曜日)

a ?? b の形で使用すると、 a が nil の場合は b を返します。

var a: String?
var b = a ?? “”
print(b) // “”