2018-01-01から1年間の記事一覧

【Swift】ImageViewにタップアクションを追加

完成図 解説 ソースコード 完成図 解説 ImageViewにButtonのようなタップアクションを追加するには、 ImageViewのisUserIntaractionEnabledをtrueにする(StoryBoardからも変更可) ImageViewにUI部品のTapGestureRecognizerを追加 TapGestureRecognizerを@I…

【Swift】文字列をURLに変換し、たった1行で開く方法

完成図 解説 ソースコード 完成図 解説 WebViewを経由することなくsafari経由でURLを開ける。 WebViewの場合は、 //URLを受け取る変数 let url = URL(string: url_word) let urlrequest = URLRequest(url: url!) webview.loadRequest(urlrequest) と記述で実…

【Swift】NavigationBarに検索バーを設置

完成図 解説 ソースコード 完成図 解説 検索バーを設置するには、ViewがNavagationControllerを継承している必要がある。 予め、Embed In で継承しておこう。 また、検索バーをSNSやクラウド共有アプリで使用する際、searchBar専用のメソッド(searchBarSear…

【Swift】カスタムフォントを設定 - StoryBoard編

完成図 解説 ストーリーボード 完成図 今回使用したカスタムフォントは、GoogleFontから入手 ↓ fonts.google.com 解説 カスタムフォントの実装方法は、 カスタムフォント(.ttf , .otf)を用意 左のフォルダに追加 プロジェクトファイル → TARGETS → BuildPh…

【Swift】TextViewのキーボードに"閉じる(Done)"ボタンを追加

完成図 解説 ソースコード 完成図 解説 UITextFieldはDelegateメソッドでキーボードを閉じられる。 だが、UITextViewには明確な方法がない。 touchesBegan内でresignFirstResponderを実行しても閉じられない始末。 そこで、キーボード内にキーボードを閉じる…

【Swift】MFMailComposeVCでメールを送信する

完成図 解説 ソースコード 完成図 解説 新規メールを起動し、指定したメアドにメールを送れる。 ・設定できる項目は 宛先 Cc Bc 件名 本文 の5つ。 参考になった動画がこちら。 ↓ 注意点が1つ。 スマホの環境設定からメールのアカウントを追加しないと起動…

【Swift】カスタムセルの作り方

どうも、猫吉(@nekokichi1_yos2)です。 完成図 ストーリーボード ソースコード 完成図 ストーリーボード 「カスタムセル」 「TableView」 ソースコード import UIKit class ViewController: UIViewController,UITableViewDelegate,UITableViewDataSource { @…

【Swift】Cellの高さを変更する

どうも、猫吉(@nekokichi1_yos2)です。 Cellを高さを変えるには、 func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat { tableView.estimatedRowHeight = 20 //セルの高さ return UITableView.automaticDimension /…

【Swift】TextViewに枠線をつける

どうも、猫吉(@nekokichi1_yos2)です。 TextViewに枠線を付ける方法を伝授します。 完成形 ストーリーボード ソースコード 完成形 ストーリーボード ソースコード import UIKit class ViewController: UIViewController { @IBOutlet weak var textView: UITe…

【Swift】NavigationControllerの画面遷移まとめ

どうも、猫吉(@nekokichi1_yos2)です。 NavigationControllerは初期状態のViewControllerとは違い、特殊な遷移を使用できます。 その遷移とは、 popViewController popToViewController popToRootViewController の3つです。 上記の使用方法について紹介し…

【Xcode】アプリのアイコンとアプリ名を変更する

アプリ名を変更 アプリアイコンを変更 アプリ名を変更 TARGETS > General > DisplayName、を変更するだけ。 ↓ 1番右のアプリ名が変更されている。 ↓ アプリアイコンを変更

【Swift】alertControllerに3つ以上のalertActionを実装してみた

解説 実験結果 ソースコード 解説 Alertは画面上に表示される警告表示。↓ 一般的なアプリでは、AlertActionの数は 2個 3個 がほとんど。 しかし、もしAlertActionの数を2,3,4…と増やしていったらどうなるのか? 実験結果 ※4個 ※12個 ※15個 13,4個以降は、ス…

【Xcode】シミュレータの黒い枠を消す

解説 解説 Xcodeでシミュレータを起動すると、下記の邪魔な枠が表示される。↓ 無駄にスペースを取るので、Macbookやノートパソコンの画面が圧迫してしまう。 できれば、下記のようにコンパクトな画面にしたい。↓ 方法は、Simulator > Window > Show Device B…

【Swift】セルの選択状態(タップ時の色)を解除する

解説 ソースコード 解説 TableViewのCellをタップすると、そのCell全体が灰色に染まってしまう。↓ しかも、他のCellをタップしない限り、元の白色に戻ることはない。 タップ時の変化自体を削除することも可能だが、タップしても何も変化が起こらないと、ユー…

【Swift】TableViewのdetailTextLabelとaccessoryType

完成図 ソースコード 完成図 ソースコード import UIKit class ViewController: UIViewController,UITableViewDelegate,UITableViewDataSource { @IBOutlet weak var tableView: UITableView! override func viewDidLoad() { super.viewDidLoad() tableView.…

【Swift】TableViewのHeaderSectionとFooterSection

完成図 ソースコード 完成図 ソースコード import UIKit class ViewController: UIViewController,UITableViewDelegate,UITableViewDataSource { @IBOutlet weak var tableView: UITableView! //セルに表示するテキスト var text = ["fafeaw","faefa","gwafa…

【Swift】UITextViewが持つ2つのプロパティ

Editable :編集可能/不可能 Selectable:選択可能/不可能 Editable:Selectable = true:true ↓ Editable:Selectable = false:false ↓ Editable:Selectable = false:true ↓

【Swift】UISwitchをオーバーライドでカスタマイズ

class mySwitch:UISwitch { required init?(coder aDecoder: NSCoder) { fatalError() } override init(frame: CGRect) { super.init(frame:frame) self.onTintColor = UIColor.red self.thumbTintColor = UIColor.cyan } } let myswitch = mySwitch() myswi…

【Swift】配列、辞書の基礎文法

配列の指定位置に要素を挿入する //配列の指定位置に要素を挿入 var array = [0,1,2] array.insert(9, at: 0) //[9,0,1,2] array.insert(8, at: 4) //[9,0,1,2,8] 配列をソートする //配列のをソート //昇順 array = array.sorted() print(array) //[0, 1, 2…

【Swift】Firebaseからデータを順番に取り出す

解説 ソースコード 解説 ・過去の記事で、Firebaseからデータを取得する方法を紹介した nekokichi2yos2.hatenablog.com ・しかし、上記の方法では、取り出すデータの順番がバラバラになってしまう ・そこで、今回は順番に取り出す方法を紹介する ・データを…

【Swift】セルをタップ時、セルの色を自由に変更する

完成図 解説 ソースコード 完成図 解説 ・cell.selectionTypeに用意されたプロパティ(.none, .blue, .gray)を設定するだけ ・自分好みの色に設定するなら、 UIViewを生成 UIVIewの背景色を設定 cell.selectedBackgroundViewにUIViewを代入 をするだけ ソース…

【Swift】空のセルを消す(非表示)

完成図 解説 ソースコード 完成図 解説 ・tableView.tableFooterView = UIView() ・tableViewのFooterを空のUIViewに設定することで、セルがなくなる仕組みなのだろう ・空のセルを消すといっても、separator(線)を消しただけなんだけどね ソースコード impo…

【Swift】アラート内にtextFieldを設置する

完成図 解説 ソースコード 完成図 解説 ・アラート内のtextFieldは複数設置可能 ・各textFieldを識別するために、それぞれにtagを設定 ・一旦、アラートのtextFieldを全て格納した配列を取得し、for文で1つずつ取り出していく ソースコード import UIKit cl…

【Swift】UIRefleshController(インジケーター)の実装方法

完成図 手順 ソースコード 完成図 今回は、インジケーターを実行すると、 "更新したよ" というテキストが代入されたセルが追加される。 手順 UIRefreshControlのインスタンスを生成 色、テキスト、などのプロパティを設定 実行したい処理や関数を追加 tableV…

【Swift】余白(padding)を入れたメッセージ吹き出しをLabelで表示

完成図 解説 ストーリーボード ソースコード 完成図 ↓余白を入れない場合 ↓余白を入れた場合 解説 ・前回の記事では、Labelだけを配置して、Labelを動的に可変させた nekokichi2yos2.hatenablog.com ・しかし、文字数が多くなるにつれ、Label内がぎゅうぎゅ…

【Swift】セル上でLabelを動的可変しながら、ImageViewを固定表示する

以前、”【Swift】セルとLabelを動的に可変させる方法”という名の記事を投稿した。 nekokichi2yos2.hatenablog.com もしチャットアプリを作るなら、Label以外にも解決すべき問題がある。 それは、アイコン、だ。 ImageViewを動的に可変させる設定を施したLabe…

【Swift】セルとLabelを動的に可変させる方法

LINEのようなチャットアプリを作る際、どうやってあの吹き出しを実装するかが問題。 (チャットアプリを作る際、とても苦労しました。) 動的に可変とは、LINEのメッセージみたいに、入力された内容に応じてLabelの大きさを変化させること。 つまり、その時…

【Swift】Firebaseからデータを取得する際のfor文について

下記のコードはFirebaseにデータを保存するコードである。 ↓ //データベースの参照URL let ref = Database.database().reference() //Firebaseからデータを取り出す ref.child("post").observeSingleEvent(of: .value) { (snap,error) in let snapData = sna…

【Swift】FirebaseRealtimeDatabaseにデータを保存する

手順 ソースコード 補足 手順 データを保存するための階層(参照URL)(リファレンス)を指定 保存したいデータを用意 データを保存 ソースコード //Firebaseにデータを保存する関数 func saveData_Firebase(_ username:String, _ message:String) { //データベ…

【Swift】Firebaseの階層URL

Firebaseにデータを保存するには、保存したい場所,階層を指定する必要がある。 乱数名の階層、自分で命名した階層、どんな階層でもOK。 今回は、Firebaseの階層URLを指定する際、各階層URLがどんな階層を表すのかを説明する。 データベース - post let ref =…