UINavigationBarのborderを消す/デフォルトに戻す
概要
UINavigationBarの下端の境界線を消す方法は調べるといくらでも出てくるが、元に戻す方法はあんまりなかったので
環境
iOS 11-13
Swift 4.0(5にしたい)
ボーダーを消す
navigationController?.navigationBar.setBackgroundImage(UIImage(), for: .default) navigationController?.navigationBar.shadowImage = UIImage()
ボーダーを元に戻す
ボーダーを消す作業で入れたUIImageの引数にnilを入れるだけでした
navigationController?.navigationBar.setBackgroundImage(nil, for: .default) navigationController?.navigationBar.shadowImage = nil
UIBarButtonItemのactionが発火しない
と思ったら、 init(customView:)
でUIButtonなどを入れこんで初期化しているとUIBarButtonItemのデフォルトのタップイベントは発火せず、中身のUIButtonのactionが発火するんですね。
以下参考までに
- RxSwift
- extensionでUIBarButtonItemにrx.tapを生やしています
// 適当なフレーム let button = UIButton(frame: CGRect(x: 0, y: 0, width: 21, height: 23)) button.rx.tap .subscribe(onNext: { _ in print("=========こっちは反応する===") }).disposed(by: disposeBag) let barButtonItem = UIBarButtonItem(customView: bellButton) barButtonItem.rx.tap .subscribe(onNext: { _ in print("======こっちは反応しない====") }).disposed(by: disposeBag) navigationItem.rightBarButtonItems = [barButtonItem]
IntelliJ IDEA ショートカットキー集(Mac)
よく使うものからまとめていきます
検索系
プロジェクト全体から文字列検索する
command + Shift + F
未分類
コードをフォーマットする
command + option + shift + l
Phalcon クエリビルダの勉強メモ
// phalcon QueryBuilder $criteria = AnyModel::query() // criteriaInterface(実際はcriteriaオブジェクト)が返される $resultset = $criteria->execute() // 検索結果(ResultsetInterface型(実際はResultsetオブジェクト)が返される) $array = $resultset->toArray() // Resultsetがarray型になる(Objectが連想配列になる。クエリビルダは特に関係ないけどよく使うので)
carthage updateがうまくいかない時
現象
久しぶりに開くプロジェクトで carthage update --platform iOS
をやったらライブラリをfetchする処理が途中で止まった
原因
わかりませんでした...carthageのキャッシュが悪さをしていたのでしょうか...
解決方法
rm -rf ~/Library/Caches/org.carthage.CarthageKit rm -rf ~/Library/Caches/carthage
参考にした記事(こちらのが詳しいです):
https://qiita.com/shtnkgm/items/c96a58579ec406194fa8#carthageのキャッシュ削除