Skip to content

すいすいSwift

インフラエンジニアなりたてで知らなかった単語をまとめ

インフラの勉強をし始めて分からなくて調べた単語をまとめました。 (adsbygoogle = window.adsbygoogle || []).push({}); コンソリデーティッドビリング(Consolidated Billing) 一括請求機能。AWS Organizations で利用することができ、組織の連結アカウントのすべての料金を支払者アカウントに一括請求することができる。連結アカウントのコストを追跡するこ Read more

PHP で本当に簡単なモックサーバーを作る

ローカルにモックサーバーが必要だったので簡単なものをPHPで作ってみました。 signup.php でユーザー登録を行い、list.php でユーザーの一覧を表示し、deleate.php でユーザーを全て削除します。 (adsbygoogle = window.adsbygoogle || []).push({}); # サーバー起動 $ php -S localhost:8000 # ユーザー登録 $ curl http://localhost:8000/signup.php -X POST -H "Content-Type: application/json" -d '{"name":"onojun", "age":24}' # ユーザー一覧 $ curl http://localhost:8000/list.php # 全てのユーザーを削 Read more

cURL(curl)でアプリにプッシュ通知を送信する

curl コマンドで iOS端末にプッシュ通知を送信する方法です。 (adsbygoogle = window.adsbygoogle || []).push({}); 証明書と秘密鍵の両方を含めたpemファイルを作成します。 $ openssl pkcs12 -in xxxx.p12 -nodes -out certificate-and-privatekey.pem curl コマンドでプッシュ通知を送信します。 プッシュペイロード、トピック、デバイストークンは使用している環境のものを使ってください。 また、本番環境(テストフライトなど) Read more

p12ファイルから証明書と秘密鍵を取り出す

.p12 ファイルから証明書と秘密鍵を取り出す方法です。 AWS SNS を Terraform で書くときに必要でした。 $ openssl pkcs12 -in xxxx.p12 -nodes -nokeys -out certificate.pem $ openssl pkcs12 -in xxxx.p12 -nodes -nocerts -out privatekey.oem (adsbygoogle = window.adsbygoogle || []).push({}); ただ、この方法では、ファイルの先頭に NoArgument から始まるテキストが入ってしまいます。 NoArgument が入っても悪さはしないのですが、気になったので消そうとしました。 以下のコマンドを実行すると秘密鍵 Read more

iOSDC Japan 2019のDay1において、ルーキーズLT枠で登壇させていただきました

iOSDC Japan 2019のDay1において、ルーキーズLT枠で登壇させていただきました。 聞いたセッションについてはまた別ブログで。 まとめ ルーキーズLT枠で申し込んでよかったです!楽しかったです! ルーキーズLT 私はルーキーズLT枠で発表させていただきました。 「iOSDCでのトークが初めての方のみ応募が可能な枠」で Read more

iOSでUITest(E2Eテスト)を行う(Swift5.0)

Swift でUITest を行うサンプルコードです。 左右のテキストフィールドに数字を入れ、ボタンを押すとその積を計算するアプリを作りました。 そしてそのアプリのUITest を実装しました。 参考: 【Swift】初めてのUITest導入

id_rsa’ are too open.

以下のエラーが出てssh接続ができなくなりました。 原因は秘密鍵の権限を制限してあげることで解決しました。 WARNING: UNPROTECTED PRIVATE KEY FILE! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ Permissions 0777 for '/root/.ssh/id_rsa' are too open. It is recommended that your private key files are NOT accessible by others. This private key will be ignored. bad permissions: ignore key: /root/.ssh/id_rsa $ chmod 600 /root/.ssh/id_rsa 参考 Error permission denied through ssh

SwiftでUITestを導入(Swift4.2)

プロジェクトにUITestを追加します。 プロジェクト作成時に作らなかった場合は以下の画像の手順で追加することができます。 @testable import Swiswiswift(Swiswiswiftはプロジェクト名) と書くことで、テストクラスの中から参照できるようになります。 関数名の頭にtestと付けることで、テストとして実行 Read more

tar (child): gzip: Cannot exec: No such file or directory

tar コマンドで解答ができずに困りました。 $ tar -zxvf openjdk-11.0.1_linux-x64_bin.tar.gz tar (child): gzip: Cannot exec: No such file or directory tar (child): Error is not recoverable: exiting now tar: Child returned status 2 tar: Error is not recoverable: exiting now 依存パッケージの gzip を入れてあげることで解決しました。 $ yum install gzip

ImagePickerControllerで画像を選択する(Swift4.2)

# Swift 4.2 Swift3の記事はこちら UIImagePickerControllerで画像の選択 iPhoneのフォトライブラリから画像を取得するサンプルプログラムです。 フォトライブラリから画像を選択するために、プロジェクトの info.plistにフォトライブラリを使用する旨を記述します。 これを書いておかな Read more

Array(Swift4.2)

#Swift4.2 Swiftの配列です。配列の作成と呼び出しについて記載します。 #Swift3の記事はこちら Array

Print(Swift4.2)

#Swift4.2 print文を使うことでコンソールに配列の中身や文字列などの情報を出力することができます。

アプリ使用中に位置情報を取得する

#Swift 4.2 アプリ使用中に緯度と経度を取得するサンプルコードです。 端末の緯度と経度が変わるとラベル文字列が更新されます。 参考 [iOS] 位置情報の取得 (Swift3編) 【CoreLocation】位置情報を取得する LocationManagerを使用する場合は、「位置情報を利用する目的」をInfo.plistに記載す Read more

押すとクニュっとするボタンを実装する

#Swift 4.2 押すとクニュっとするボタンのサンプルコードです。 iOSでよくあるマイクロインタラクションです。 僕はマイクロインタラクション大好きなんですが、エンジニアやデザイナーの自己満なんでしょうかね? わからんとです。

SSH で入ることのできるDockerイメージ(Ubuntu14.04)

Ansibleの練習のため、SSHで入ることができるイメージが欲しくて書きました。 CentOS7はこちら CentOS6はこちら 参考 Docker 初心者 — ssh で接続できるサーバーを立てる $ docker build -t ssh_ubuntu14:latest . --no-cache $ docker run -d -p 2222:22 ssh_ubuntu14:latest $ ssh-keygen -R [localhost]:2222 $ ssh -p 2222 kabigon@localhost

食洗機の分岐水栓取り付け工事を自分で行う。

例のPayPyaの20%キャッシュバックキャンペーンに釣られてビックカメラで食洗機を買いました。 パナソニック 食器洗い機(ホワイト)【食洗機】 Panasonic プチ食洗 NP-TCB4-W 食洗機の分岐水栓の取り付け工事は1万5千円(工事五千円+分岐水栓1万円)かかると言われたので、自分でやってしまおう!と思い自分でやりました。 分岐水栓 Read more

Alamofireを使ってAPIからJSONを取得する(Swift4.2)

古い記事(Swift3)は こちら Alamofireを使ってAPIからJSONを取得する #Xcode 10.1 #Swift 4.2 swiftの有名な通信ライブラリであるAlamofireとこれまたSwiftで有名なJSONを扱うライブラリであるSwiftyJSONを使って、 お天気APIから情報を取得するサンプルです。 今回のサンプルでは Read more

Android Studio でアイコンを設定する

– File -> Image Assets で Configure Image Asset を開く – Pathの…ボタンを押し、アイコンにしたい画像を選択する。 – Resize でサイズの微調節を行う。 – Nextボタンを推し、アイコン画像の名前やサイズを確認し、Finish。

Xcode10でプロジェクト名を変更する

こちらの記事を参考にさせていただきました。 ありがとうございます! 参考記事の方が丁寧に書いてありますので、わからないことがあったら是非そちらを Xcodeでプロジェクト名を変更する方法 (Xcode8.0) 今回は WebRTCHandsOn というプロジェクト名を、simple-video-chat-ios というプロジェクト名に変更します。 1.Xco Read more

KotlinでListViewを内包したTabを作成する

KotlinでListViewを内包したTabを作成しました。 参考にさせて頂いたWebページです。 すごく良い記事なので、この記事より彼の記事をみてください。 Getting Started with Tabs in Android — Kotlin build.gradle に以下のdependencyを追加します。 implementation 'com.android.support:design:26.1.0'

SafeAreaを取得する

iPhoneXが登場したことで、iPhoneXのレイアウト(SafeAreaの取得)には気を使うようになりました。 SafeAreaはviewDidLayoutSubviews メソッド内で、safeAreaInsets プロパティを参照することで取得することができます。

iOSでバーコードを読み取る

Swiftでバーコードを読み取るサンプルコードです。 Swift 4.1 // 参考にさせて頂いたサイトです Swift 4でQRコードを読み取る AVFoundation(AVCaptureMetadataOutput)でバーコードリーダーを作ってみた まず、info.plistに Privacy - Camera Usage Description のキーを追加し、使用理由を記述します。 Read more

流れるように動く背景を実装する

私が作っている4択化学というアプリの背景の実装方法をたまに聞かれるので、それのサンプルコードを書きました。 アプリのアイコン画像がViewの背景を流れます。 またviewDidLoadにアニメーション関係のメソッドを書くと、NavigationBarの遷移によりアニメーションが止まってしまうことがありま Read more

Asset CatalogでColor Setを使って色を管理する

Xcode9(iOS 11)から、色をAssetで管理することができるようになりました。 UIColorのExtensionを作って色を登録して関数作ったりしてごにょごにょしなくて良くなりました。 色の管理がしやすくなりましたし、デザイナーさんとの連携もちょっとしやすくなったのかな?って思いました。 とても良い機能なんですが Read more

UIViewの背景をグラデーションさせる

UIViewの背景をグラデーションさせるサンプルコードです。 参考にさせていただいたページ 【Swift x iOSアプリ開発】Viewの背景色にグラデーションを設定する方法 Swift UIViewの背景をグラデーションさせる方法 -iPhoneアプリ開発-

TableViewを編集してCellを削除する

TableViewを編集してCellを削除するサンプルコードです。 NavigationBarに編集ボタンを追加し、そのボタンを押すことでセルを削除することができます。 NavigationControllerについてはこの記事を参考にしてください。 NavigationControllerを実装する

TableViewを編集してCellを削除する(横スライド)

TableViewを編集してCellを削除するサンプルコードです。 以下の関数を追加することで、セルを横スライドで削除できる機能を付けることができます。 func tableView(_ tableView: UITableView, commit editingStyle: UITableViewCellEditingStyle, forRowAt indexPath: IndexPath)

現在の日付と曜日、現在時間を取得する

Swift4.1で現在の日付と曜日、現在時間を取得するサンプルコードです。 以下の形式の文字列で取得してくれます。 2018/04/03 (木) 19:03:34 上のような形式で取得するサンプルコードです。 Calendar.currentで取得すると、設定によっては和暦(平成〇〇年)で取得してしまう可能性があるので(2018/04/03が Read more

Arduinoでボタンを使う(プルアップ抵抗無し)

Arduinoでボタンを使うときのサンプルコードです。 あんまり知られていないんですが、プルアップを使うとプルアップ抵抗が無しで簡単にボタンを使うことができるんですよ。 グラウンドとDegitalの2番ポートを繋げると(ボタンを押すと)そのことを認識できます。

ESP32でRTCモジュールを使う

ESP32でRTCモジュールを使おうとしたら少し詰まったので記事にしました。 結論を先に書くと、#include DS1307RTC.h を一番上に持ってくることで解決しました。 サンプルコードのReadTestのESP32バージョンになります。 使用ライブラリと機材は以下の通りです。 DS1307RTCライブラリ github.com/PaulStoffregen/DS1307RTC ESPr® Developer 32 Read more

文字列やURLからQRコードを生成する

文字列やURLからQRコードを生成するサンプルコードです。 This is a sample code that generates a QR code from a character string or URL. これらの記事を参考にさせていただきました。 CIImageをData型に変換したときにハマった時の対処法(Swift3.0) SwiftでQRコードを生成してみた 生成したQRコードはこちらです。

列挙型 enum

列挙型、enumの書き方のサンプルコードです。 ここではpersonというクラスを作り、カビゴンさんの名前と出身地をenumを用いて登録しています。

iPhoneアプリのプログラミングの勉強法

「iPhoneアプリを作るには何から勉強したらいい?」と友達にちょくちょく聞かれるのでオススメの勉強法をまとめてみました。 iPhoneアプリの勉強方に王道が無いと思いますが、良かったら参考にしてください。 1.書籍で勉強する まずはじめに書籍で勉強することをオススメします。 Webページは見返すことが難し Read more

UserDefaultsを使ってパラメーターを保存する

UserDefaultsはアプリを落としても保持しておきたいデータを保存するときに使います。 使い方はいたってシンプルです。 サンプルコードでは、まず最初に userDefaults.register(defaults: ["KEY_LabelText": "Hello"]) で初期値を設定しています。 .register() はとても便利で、指定したキーに対応するデータが存在しない場合に、初期値を入れてくれます。 次にラ Read more

UIPickerViewを使って値を選択する

はいどーも! UIPickerViewを使って値を取得するサンプルコードです。 PIPickerViewは選択肢の中から要素を選ぶときによく使いますね。 今回は食べ物とドリンクとフードを選ぶアプリを作ってみました。 AppleDeveloperDocuments UIPickerView

カスタムレイアウトを持つコレクションビューをつくる

今作成しているアプリに画像が入れ子となったデザインをつくることになったので、実装方法について調べました。 主なコードは以下のサイトを参考にさせていただきました。 本当にありがとうございました。 Swift2->4の変換は大変でした。。。 iOS UICollecionViewFlowLayout でカスタムレイアウトを作ろう ~ Swift版

Swift3からSwift4への移行時に出る@objc inference warningsを消す

Xcode8からXcode9へ乗り換えてSwift4へ変換すると以下のエラーが出ます。それの消し方です。 The use of Swift 3 @objc inference in Swift 4 mode is deprecated. Please address deprecated @objc inference warnings, test your code with “Use of deprecated Swift 3 @objc inference” logging enabled, and then disable inference by changing the "Swift 3 @objc Inference" build setting to "Default" for the "TargetName" target. 各ターゲットを選択 -> Build Settings -> 検索窓で inference と検索 -> Swift @objc inference を Default に設定する 他にも Read more

UINavigationControllerの戻るボタンの戻るを消す

UINavigationControllerの戻るボタンの文字を消します。 「<戻る」を「<」にします。 let backButton = UIBarButtonItem(title: "", style: .plain, target: nil, action: nil) self.navigationItem.backBarButtonItem = backButton self.navigationController?.pushViewController(picDetailView, animated: true)

UICollectionView

UICollectionViewのサンプルです。 UICollectionViewを使う を参考にさせていただきました。 このサイトは見やすくて、swiftをやる人にとてもオススメです。 makeColor() 関数でランダムに生成した色をセルに入れています。 スクロールするたびに色が変わります。

ESP32でSDカードのテキストファイルを読み書きする。

ESP32でSDカードに保存されたテキストファイルを読み書きするサンプルです。 読み込んで書き込むシンプルなサンプルコードがネットにあまりな無かったので描いてみました。 SDカードとESPとの配線はこちらのサイトを参考にしました。 mgo-tec電子工作 いろいろ調べたのですが、プルアップ抵抗はあった方が良 Read more

curlでpostでJson送る

Macのターミナルからcurlコマンドでjsonをpostする方法です。 ローカルで開発をしていて、apiの確認をしたい時によく使います。 curl http://localhost:3000/api/url -X POST -H "Content-Type: application/json" -d '{"email":"kabigon@swiswiswift.com", "password":"password"}'

Alamofireを使ってAPIからJSONを取得する

新しい記事(Swift4)はこちらAlamofireを使ってAPIからJSONを取得する(Swift4.2) swiftの有名な通信ライブラリである Alamofire とこれまたSwiftで有名なJSONを扱うライブラリであるSwiftyJSONを使って、お天気API から情報を取得するサンプルです。 今回のサンプルでは非 Read more

UIImagePickerControllerで画像の選択

iPhoneのフォトライブラリから画像を取得するサンプルプログラムです。 フォトライブラリから画像を選択するために、プロジェクトの info.plist にフォトライブラリを使用する旨を記述します。 これを書いておかないとUIImagePickerControllerは使えません。 キーの値は以下の値を使います。 NSPhotoLibraryUsageDescription Typeは Read more

rootのログインを禁止にする

VPSを借りて一番最初に行うrootのログインの禁止のメモです。 rootでサーバーにログインしてパスワードを入力します。 $ ssh -l root xxx.xxx.xxx.xxx ユーザーの追加をします。onojunというユーザーを追加します。 $ adduser onojun パスワードを設定します。OSによってはadduserの時に設定するはずです。 $ passwd onojun 一旦ログアウします Read more

texworksのURL

Windowsのパソコンを自作し、texworksを入れたのですがショートカットを間違えて消してしまい、困りました。 ` C:\w32tex\share\texworks\texworks.exe ` にありました。 TeXインストーラ 3 簡単LaTeXインストールWindows編(2016年4月版)

UIStatusBarを白くする

UIStatusBarを白くする方法についてです。 UIStatusBarを白くする方法その1 UIStatusBarを白くする方法その1です。特定のViewControllerを白くする方法です。白くしたいUIViewControllerに書きます。 NavigationController以下にあるS Read more

UITableViewとUISearchBar

UITableViewとUISearchBarを組み合わせたサンプルです。 ナビゲーションバーにある虫眼鏡を押すとSearchBarが現れ、そこに文字を入力することで検索結果が表示されます。 UITableView 基本的なテーブルビューの例文を以下に示します。

UserNotification(LocalNotification)

UserNotificationはユーザーに対して通知を発行する時に使用します。 UserNotificationは大きく分けて二種類あり、外部から通知を発行できるRemoteNotification(LineやTwitterのような通知)とLocalNotification(時計アプリなどの内部的に Read more

音声認識(SFSpeechRecognizer)

iOS10からSpeech Frameworkが登場しました。 ここではSFSpeechRecognizerを使って音声認識をしてみようと思います。 そしてシミュレーターでは動かないから気をつけてください。 参考: AppleDeveloper:SpeakToMe: Using Speech Recognition with AVAudioEngine 参考: あたも開発ブログ 参考: 【iOS 10】Speechフレームワークで音声認識 – 対 Read more

UITextField

UITextFieldは文字の入力に使われます。 UITextFieldのクラス階層 NSObject ↑ UIResponder ↑ UIView ↑ UIControl ↑ UITextField AppleDeveloperリファレンスUITextField UITextField例文 UITextField、生成し、ボタンが押されるとUITextFieldから文字列を取り出してラベルにコピーしま Read more

cafファイルの作成

.cafファイルはiOSに用いられる音声ファイル形式です。以下はwavファイルを同名で出力するコマンドです。 afconvert -f caff -d ima4 ファイル名.wav

UINavigationBar

iOSアプリの画面上部によく使われているUINavigationBarについてです。 UINavigationBarのクラス階層 NSObject ↑ UIResponder ↑ UIView ↑ UINavigationBar AppleDeveloperリファレンスUINavigationBar UINavigationBar例文 UINavigationBarを生成し、タイトルとボタン Read more

UILabel

UILabelクラスは文字表示を管理するクラスです。画面に文字を表示させたい時に使用します。 UILabelのクラス階層 NSObject ↑ UIResponder ↑ UIView ↑ UILabel AppleDeveloperリファレンス UILabel UILabelサンプル サンプルコード UILabelのカスタマイズ UILabelにタッチイベントを実装 参考: [Swift2.0] UILabelとU Read more

UITableView

UITableViewはリストのような形でテキストを表示するクラスです。データ一覧などを表示する時などに役立ちます。 UITableViewのクラス階層 NSObject ↑ UIResponder ↑ UIView ↑ UIScrollView ↑ UITableView AppleDeveloperリファレンスUITableView UITableView 二つのグループの場合です。

UIButton

UIButtonクラスはボタンを設置するためのクラスです。 ボタンタップでアクションを起こすことができます。 UIButtonのクラス階層 NSObject ↑ UIResponder ↑ UIView ↑ UIControl ↑ UIButton AppleDeveloperリファレンスUIButton UIButton例文 様々なUIButtonのサンプルです

UIBarButtonItem

UINavigationBarの要素追加、カスタマイズに用いられるUIBarButtonItemについてです。 UIBarButtonItemのクラス階層 NSObject ↑ UIBarItem ↑ UIBarButtonItem AppleDeveloperリファレンスUIBarButtonItem UIBarButtonItem例文 UINavigationBarを生 Read more

Dictionary

辞書配列の書き方 Swiftの辞書配列です。辞書配列の作成と呼び出しについて記載します。

Array

配列の書き方 Swiftの配列です。配列の作成と呼び出しについて記載します。 配列の追加、挿入、削除 配列の追加、挿入、削除をしてみます。