Swift

SwiftでTwitterとかにあるような「○○分前」といった表記を実現する

こんばんは、daihaseです。 タイトルにあるように「○○分前」「○○時間前」といったTwitterを始め、ユーザーの投稿一覧なんかを表示するアプリではおきまりの表記、こちらのSwiftでの実装方法を説明したいと思います。 まず日付となるとDateクラスですね。こち…

曜日や日付を簡単に取得するExtension

こんばんは、daihaseです。1ヶ月ぶりくらいのブログです。 今日は大好きなSwiftネタを久々に。 Dateを使った日付表示とかはツール系のアプリでもよく出てきますね。 その度に毎回 let dateFormatter = DateFormatter() なんて書いてたら微妙なんで、ここはDa…

Swift製お絵描きライブラリを作ってみました

こんばんは、daihaseです。 1年ぶりくらいにSwiftでOSSを作ってみました。 Sketch こちら、実は既にアプリで導入実績のあるライブラリです。 Doodle Maker -写真にお絵描き&イラスト- こちらのアプリはAndroid版もリリースされているのですが、合わせてまだ…

iOSのカメラやアルバムへのアクセス許可などを一元管理するラッパークラス

こんばんは、daihaseです。 今夜もSwiftネタを書いてみます。 iOSアプリでカメラにアクセスしたりアルバムから写真を引っ張ってきたりする際には、カメラへのアクセス許可周りなど考慮しないといけない点がいくつかあります。 iOS7以前はカメラの使用に関し…

SwiftでMD5を使った簡単ハッシュ化

こんばんわ、daihaseです。 今日もSwiftネタを。Swift強化月間。 お題の通り、Swiftを使って文字列をハッシュ化してみましょう。 そもそもハッシュやMD5とは?という方はこちらを。 Swiftでこちら処理を行うにはObjective-CのCommonCryptoを利用する必要があ…

アプリ開発で色情報を管理する

こんにちは、daihaseです。今日はSwiftネタを。 アプリ開発をしていて、背景の色だったりタイトルの色だったり、皆さまこの辺どんな風に管理していますでしょうか。 例えば背景の色を変える、といった場合デフォルトだと以下のやり方になりますね。 import U…

文字列から高さと幅を取得する

こんにちは、daihaseです。 ちょっと久々の投稿になりますが、今日はSwiftネタを。 開発をしていると文字列から高さ・幅を取得したい時って出てこないですかね? そんなちょっとしたTipsを紹介。 まずStringを拡張したクラスを以下のように作ります。 import…

UIImageをリサイズして返すメソッド

こんにちは、daihaseです。 今日はまた久々にSwiftネタを。 お題にあるUIImageをリサイズして返すメソッドですが、使い道としては、例えばアプリ側で取得した画像をサーバーにアップする際に、通常だと縦横サイズが大きすぎるので容量もデカくなってしまいま…

UIViewの指定した箇所を角丸にする

こんばんは、daihaseです。 今日は久々のSwiftネタを。というか久々のブログを。 UIViewの指定した箇所を角丸にする方法。 例えば全体を角丸にするには let roundedView = UIView(frame: CGRect(x: 0, y: 0, width: 100, height: 50)) roundedView.layer.cor…

コードでグラデーションのUIViewを作る

こんばんわ、daihaseです。 久々の投稿です。 今日はSwiftでグラデーションのUIViewの作り方を。StoryboardやXibは使わずにコードだけでやってみます。 まずファイル名は何でもいいので、UIViewを継承したカスタムViewを作りましょう。ここではGradientView.…

UIColorを指定してUIImageを返すメソッド

こんばんわ、daihaseです。 今回もSwiftです。Swift万歳。 どういう使い道があるのか...。とりあえず好きなUIColorを引数にあたえてそれをUIImageとして返してくれるメソッドを紹介。 class func createColorImageFromUIColor(color: UIColor) -> UIImage { …

StoryboardとUIViewControllerを使ったポップアップビュー

こんばんわ、daihaseです。 ツール系のアプリ開発をしていて、必ずといって言いほど使われるポップアップビュー。何かボタンを押下した時に画面に「にゅ」っと出てきたりする小窓みたいなやつのことですね。 それの実装方法を紹介。いくつかあるのですがここ…

SwiftでのStoryboard管理方法

こんばんわ、daihaseです。 新型iPhoneが発表になって連日TLのiOS開発者がXcode9GMをいじり倒したり色々シミュレーターでアプリの動作報告をしてくれてますね。僕は特に何の役にもたたないので、今日はStoryboardの管理の仕方なんかを書いて見ました。 iOSア…

Swiftで16進法にてUIColorを取得

こんばんは、daihaseです。 久々のブログ更新です...。 今日はiOS開発をやっていてよくあるカラー周りの管理について。 管理といってもそんな大それたあれではなく、単にUIColorを拡張(Extension)し、各クラスから簡単に16進数を指定するだけで好きな色を取…

Swift正規表現でメールアドレスをチェックする

こんにちは、daihaseです。 今日はSwiftでのメールアドレスのバリデーションについて。ツール系アプリなんかでも最初ログインする際にメールアドレス形式かどうかをチェックすることがありますよね。 サーバー側でやるかクライアント側でやるかにもよるので…

iOSでステータスバーを非表示にする

こんにちは、daihaseです。 今日はSwiftネタでちょっとした備忘録を。 iOSアプリを開発していて、ステータスバーをある画面でだけ非表示にしたい時がありました。該当するViewControllerで以下のコードを書けばステータスバーが非表示になります。 override …

iOSアプリで定番のUserDefaultsの使い方

こんばんわ、daihaseです。 久々にSwiftネタを。 iOSアプリ開発をやっていれば必ずといって使うUserDefaults、その使い方などを簡単に紹介。 UserDefaultsとは、簡単にいうとデータなどをアプリ内に保存し管理する方法の1つです。アプリで例えばスプラッシュ…

Carthageのライブラリを更新する際の注意点

こんにちは、daihaseです。 今日は久々に自分用のメモを残す感じで。 Carthageでライブラリを入れたプロジェクト、こちらを例えばXcode8.2 -> Xcode8.3へ切り替えてビルドしようと思ったら、 No such module "CropViewController" ※この時はライブラリPhotoC…

iOSアプリのバージョン取得方法

こんにちは、daihaseです。 いい感じに忙しい日々です。 今日はiOSアプリのバージョン取得方法。Xcodeでプロジェクトを選択し「General」-> 「Identity」のところにある下図の番号ですね。 以下コードで取れるのでアンラップしてUILabelなどにセットして使う…

UITextFieldを入力後にキーボードを閉じる #Swift

こんにちは、daihaseです。 しばらくSwift使って簡単にiOSアプリを作れるYo!ってことを広めるために、よく使いそうな簡単な実装ネタをいくつか展開していければと思います。 それでは今回はTextFieldに入力してからキーボードを閉じる方法をば。Xcodeで真ん…

UITableViewの区切り線を端っこまでひく方法

こんにちは、daihaseです。 今日はSwiftネタで。iOS開発をしていてTableViewをセットしてcellを並べると思いますが、そのとき区切り線が特になにも設定しないと左端がとぎれますよね。 こんな感じに。 これをちゃんと端っこまで引くやり方を。 UITableViewを…

AWS + Nginx + Node.js + iOS(Swift) でリアルタイムチャットアプリを作ろう

こんにちは、daihaseです。 今回のお題は「AWS + Nginx + Node.js + iOS(Swift) でリアルタイムチャットアプリを作ろう」ですが、なぜこれを書こうと思ったか。 スマホアプリでチャットを導入するって、個人で開発するアプリではなかなかボリューム的にはな…

UIAlertControllerでアラートを出す簡単なサンプル #Swift

こんにちは、daihaseです。 あと1ヶ月ほどで今年も終わりですね... お仕事されてる方は実質16, 17営業日くらいですかね。今年は何か月日が経つのが異常に早かったような気がします。 さて、今日はiOS(Swift)でアプリを作る際はほぼ確実に実装するであろうUI…

iOSアプリ、リジェクト(IPv6編)

こんにちは、daihaseです。 先日Apple先生にiOSアプリを申請したところ「おたくのアプリ、IPv6環境化でクラッシュしたからリジェクトね」と言われてどん詰まり状態で御座います。 Apple先生から来た内容の一部を抜粋すると Your app crashes on iPad Air 2 a…

[Swift] UINavigationBarの背景を透明に

こんばんは、daihaseです。 最近急に寒くなってきましたね。僕は1週間以上風邪をこじらせてしまいました。 今回はiOS開発をやっていてよく使うUINavigationBar、これを表示・非表示にするのではなく、単に透明にしたいって思ったことないです? 透明なのでそ…

文字列内から空白スペースを取り除く #Swift

  こんにちは、daihaseです。 今回は簡単なメモを。 Swiftでフォームに入力したメールアドレス、パスワードなどをバリデーションする時 String内に含まれる空白スペースを取り除きたいってよくありますよね。 以下のようにすれば前後だけでなく、文字列…

Parseを使ったアプリケーション開発(実践編 2)

こんばんは、daihaseです。( ・ิω・ิ) Parseを使った開発記事も今回が一旦最後です。前回はただParse上に実際テーブルにあたるもの(Object)をスキーマレスに生成できたとこまでをやってみました。今回は実際もう少し簡単なiOSアプリを作ってParseの感覚を掴ん…

Parseを使ったアプリケーション開発(実践編 1)

こんにちは、daihaseです。 真昼間から自宅で作業してると無性に公園とかにいって光合成したくなるのは僕だけでしょうか? それはさておき、前回Parseの紹介をしたところで実際どれくらいこの サーバーレスと言われる技術がいいか、実際に簡単なサンプルアプ…