メッセージアプリ風テキスト入力があるサンプルアプリを作成した記録【Xcode11.5, iOS12.4, Swift5で確認】
LINEとかのメッセージアプリって、
画面の下部にテキストボックスがあって、
キーボードが現れるとその高さ分テキストボックスが上がったり。
キーボードが消去されるとテキストボックスは元の位置に戻ったり。
という動作をしますよね。↓こうゆうやつのことです。
キーボードの高さに追従するようなテキストボックスの作成なんですが、これがなかなか難しい。AutoLayoutの制約とかUIResponderをうまく使って作ってあげなきゃいけないんです。
3年くらい前かな?一回作って完成させたんですよ。それを使ったアプリが「ポーン - プロフェッショナルな名言」です。
なのですが、、、、
いつの頃からかSwiftかiOSかのバージョンが上がったことを理由にビルドが通らなくなっちゃったんですよね...。
そこで3ヶ月くらい前ですかね、この仕組みを作り直しました。なかなかしんどかった。
今回は、同じようなことがあった時に見失わないように、ブログに記録しておこうと思います。
UITableViewの区切り線のすき間幅(Separator Inset)をコードで調整する方法 & Storyboardで調整する方法
TableViewのセルとセルの間の区切り線のすき間、気になりません??
これのことです。
このすき間、UIKitではSeparator Insetと呼ぶみたいです。
今回はこのSeparator Insetを調整する方法を書いていきたいと思います。
目次
- 1. Storyboardで調整する方法
- 2. コードで調整する方法
- 2.1 tableView(_:willDisplay:forRowAt:)(TableViewDelegate)を使って調整する方法
- 2.2 UITableViewCellを継承したクラスで調整する方法
- 3. まとめ
RealmでTabelViewControllerを使ったリスト表示アプリを作った
CocoaPodsやCarthageを使わないでRealmを導入する方法
今日はモバイルデータベースライブラリのRealmをiOSアプリに導入する準備を行います。
このような外部ライブラリを管理してくれる仕組みとしてCocoaPodsやCarthageがありますが、これらでライブラリをプロジェクトに新規でインストールするには、当然ながらネットワークの接続が必要となる時があります。私は移動中に勉強することが多くいつもいつも太い回線を使える訳では無いため、ちょっとした動作確認の際に管理ツールを使わないで済ましたい時がよくあります。
今回は本当によく使うライブラリであるRealmの「CocoaPodsやCarthageを使わないで」導入する方法を備忘録として残したいと思います。
間違ってTerminalでSwiftの実行環境に入ってしまった場合は落ち着いてコレをしよう
小ネタです。
「今入ってるSwiftのバージョンって何だっけ?」 と思い、Terminalに swift
と打ち込みました。オプションのガイドみたいなのが出力されると思って気軽に打ち込んで見たのですが、出てきたのは意図していないものでした。