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) // “”

SWIFT4 CSV READ

平成30年3月19日(月曜日)

まずは、以下二点
swift4対応として、3点から5点修正の他、一列目をtitleとする仕様、改修が必要
Reading and Writing Text and CSV files in Swift

file read部分について、以下採用
Bundle.main.path(forResource:ofType:inDirectory:) returns nil

以下にライブラリ有り、5つ程度、プロジェクトにコピーすれば、エラーも無く動作。
今回は、下の方法で、十分事が足りたので、今回は使用せず。
yaslab/CSV.swift



★【Swift3.0】 CSVから読み込んで、配列にする
最終的に、以下を参考に配列格納部分を追加し、今回使用。
試行錯誤した結果のプロジェクト保存等は、以下
forecasterplus2018内のforecasterplus_2018_m_detall_with_core_A