- 1. [SwiftUI]sheetで遷移するView間で値を引き渡す
- 2. [Pythonista]iPhone単体でAPN構成プロファイル作るやつ作った
- 3. 去年の自分にマサカリを投げる
- 4. 新卒エンジニアがSwiftUIで個人アプリをリリースしました?
- 5. AppleSearchAdsAPIを使おうとしたら人参で詰んだ件
- 6. NFC には A, B, F… がある【iOS Core NFC】
- 7. XLPagerTabStrip でページ切り替えイベントを正しく判定する
- 8. リリースしようと思ったらValidate Appでエラーが発生してハマった
- 9. iOS リアルタイム入力でハッシュタグ形式に文字装飾するTIPS
- 10. Combine で RxSwift の Single を置きかえる
- 11. PowerBIのスマホ用Vizについて考えてみた
- 12. Apple Human Interface Guidelinesを読んでみた① 〜設計原則について〜
- 13. アイコンWebフォントをiOSで使う
- 14. アマゾネス、MacOSアプリを作ってVTuber(偽)デビュー
- 15. 【iOS 13】アプリアイコンをダークモード対応させることは可能なのか検証してみる!!
- 16. SwiftUIでViewを画像としてUIActivityを利用してSNSに共有する
- 17. SwiftUIでのMFMailComposeViewControllerの使用
- 18. #17 Xcodeでアプリの向きを縦に固定する1例
- 19. 【Swift】associatedtypeの使いどころ
- 20. 【Xcode】細分化する iOS Architecture に向き合う上で気をつけなければらないただひとつのエラーについて
[SwiftUI]sheetで遷移するView間で値を引き渡す
# はじめに
この記事は[ジーズアカデミーAdvent Calendar 2019](https://qiita.com/advent-calendar/2019/gsacademy?fbclid=IwAR2AtQw-j9Mln-KaSfmX_E2gNZeg2vbesJcbARuzccOFm_70Nqd9hfWnSEU) 3日目の記事です。
こんにちは!Dev(週末コース)8期の@Ryu0823といいます。
ジーズではWebコースで、最後のDemo dayも参加できなかったのですが、卒業してからもいろいろな言語をかじり、最近はSwiftUIでアプリを制作しています。
SwiftUIはSwiftより簡単かつわかりやすいと感じていますが、まだ新しい言語のためできないこともあったり、情報も少ないのが現状です。
そこで今回は、sheetで遷移する場合にView間で値を渡す方法を探すのに苦労したので、備忘録的に書いてみます。
完成形は↓
![Nov-24-2019 21-50-32.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaw
[Pythonista]iPhone単体でAPN構成プロファイル作るやつ作った
# つくった
世の中にはAPNを頻繁に変える人もいるらしい
深夜に1時間半ぐらいで作った
なのでちゃんと動くか分からない## こんな感じ
iPhone単体でAPNのプロファイル作るやつできた
要Pythonistahttps://t.co/IG7VQxyGOc pic.twitter.com/5HyxOSOpyh— ᴜᴢᴋ (@uzk17) December 2, 2019
去年の自分にマサカリを投げる
# まえがき
こんにちはrenです。
世間は12月。すっかりアドカレの季節ですね。アドカレといえば去年のアドカレではこんな記事を書きました。
[iOSアプリでよく見るチュートリアル画面を作成する](https://qiita.com/renchild8/items/8fd870d5bfed0f0b360b)え、なにこれ。
読みづらすぎる。ということで、去年の自分にマサカリを投げることにしました。
# 本編
まず、前回のコードを見返してみましょう。## ViewController.swift
```Swift
// ViewController.swift
import UIKitclass ViewController: UIViewController{
var tutorialCollectionView: UICollectionView!
var layout: UICollectionViewFlowLayout!override func viewDidLoad() {
super.vi
新卒エンジニアがSwiftUIで個人アプリをリリースしました?
みかんが美味しい季節になってきましたね
どうも新卒新米エンジニアの[@tsuzuki817](https://twitter.com/tsuzuki817)です??
読書した本の金額を管理できるアプリをSwiftUIを使って作りました?
[BookBank 〜読書銀行〜 ](https://apps.apple.com/jp/app/bookbank-%E8%AA%AD%E6%9B%B8%E9%8A%80%E8%A1%8C/id1487377681)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/171702/00ceef29-8d84-6e46-e50f-304a7f69ccc4.png)自分は技術書などを主に読むのですが、技術書というものは値段が高いのが常です。
そこで自分が今までにどれくらい本を購入しているのか気になって作ろうと思いました。
NFC には A, B, F… がある【iOS Core NFC】
Core NFC Advent Calendar 2019、私としては2回目の記事になります。
iOS 13 で大幅に機能が追加され、実用的になった Core NFC ですが、そもそも NFC には大きく3つのタイプがあります。
# 3つの通信規格
この記事でいう NFC の3つのタイプとは、- NFC-A
- NFC-B
- NFC-Fのことを指します。また、NFC-A には MIFARE、NFC-F には FeliCa という呼称もあります。
記事タイトルと噛み合いませんが、この記事は Core NFC Advent Calendar に属するので NFC のより詳しい説明は[こちらの Qiita 記事「NFC関係用語と解説」](https://qiita.com/gpsnmeajp/items/49db2212e632869edaf8)が詳しいです。
これら3つのタイプにあうプロトコルが Core NFC では提供されており、読み書きしたいタグ(カード)の規格がどのタイプなのかに合わせてコーディングしていくことになります。
# それぞれのカードがどのタイプなのか
XLPagerTabStrip でページ切り替えイベントを正しく判定する
iOS で UISegmentedControl ライクでリッチな上タブを実現するライブラリはいくつかありますが、Swift 5 にも対応していて最も有名なもののひとつ、XLPagerTabStrip。
このライブラリを使ってページを切り替えたときのイベントを処理する際に困ったので、備忘録として残しておきます。
前提として、`ButtonBarPagerTabStripViewController` のサブクラスで実装するとします。
## 問題: `moveToViewController(at:animated:)` はスワイプ時に呼ばれない
ページを切り替える操作は、以下の2パターンがあると思います。
**1. ページラベルを直接タップする**
**2. スワイプで隣のページに移動する**上記のうち、**2. スワイプで隣のページに移動する** とき、`moveToViewController(at:animated:)` が呼ばれません。
したがって、このメソッドの中でページ切り替え時の処理を書くと、ラベルを直接タップしてページ切り替えをしたときにした期待した動作
リリースしようと思ったらValidate Appでエラーが発生してハマった
#エラー内容
リリースしようと思いValidate Appを実施した所次の3つのエラーが発生した。`・Unsupported Architectures. The executable for XXX.framework contains unsupported architectures '[x86_64, i386]'.`
`・Invalid Segment Alignment. The app binary at 'XXX.framework' does not have proper segment alignment. Try rebuilding the app with the latest Xcode version.`
`・The binary is invalid. The encryption info in the LC_ENCRYPTION_INFO load command is either missing or invalid, or the binary is already encrypted. This binary does not se
iOS リアルタイム入力でハッシュタグ形式に文字装飾するTIPS
# 本稿の目的
`#`から始まるハッシュタグの部分の色が変わり、タップするとハッシュタグの内容に応じたフィードの検索などを行う機能は最近ではあたりまえのUXになっています。![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/125724/8e1385cf-052a-7e93-ede3-8c520df845a8.png)
iOSでの文字装飾は`NSAttributedString`で行うことが一般的ですが、文字装飾した部分をクリックできるようにしたり、TwitterやFacebookのようにリアルタイムで入力した内容に応じて文字装飾を行うためにはどのように実装するべきかを説明します。
[Androidについても記述しています。よろしければどうぞ。](https://qiita.com/nosaka/items/aeb3ae8c0a3a187dd7a4)
# ラベルにハッシュタグの形式に相当する部分を文字装飾する&クリックできるようにする
## ハッシュタグの形式に相当する部分を正規表
Combine で RxSwift の Single を置きかえる
この記事は iOS Advent Calendar 2019 の 2日目の記事です。
iOS13から、非同期処理を便利に扱うことができる、 [Combine](https://developer.apple.com/documentation/combine) というフレームワークが使えるようになりました。
iOSアプリ開発でよく使われている [RxSwift](https://github.com/ReactiveX/RxSwift) とよく似ているため、今までは RxSwift を使っていたけど、新規開発では Combine を使ってみようかな、と思っている方もいらっしゃるのではないかと思います。
個人的に RxSwift でよく使うのが `Single` で、 (本当はこれだけならもっと軽量なライブラリでも実現できるのですが) API通信の部分などによく使っています。
この記事では、この Single を使った実装を Combine で実現しようと思ったときに、意外と調べたりハマったりして時間を使ってしまったため、基本的な部分についてまとめてみました。
## Singl
PowerBIのスマホ用Vizについて考えてみた
## はじめに
2019年9月に、[Kibunlog](https://kibunlog.com/)というiOSのアプリで入力した気分を自分なりの観点で集計しよう、ということで、気分入力後、Twitterにハッシュタグ付きで投稿された気分を、Microsoft Automateで拾い、OD4B上のExcelに記録、Power BIでパソコンでもスマホでも見えるようにしました。その時、自分が作ったスマホ用Vizがイマイチだなぁ、、と感じ、その後もこれ以外にスマホで見えるものを作っているのですが、やっぱりレイアウトや使う側の視点からみて等イマイチ...。ということが続きましたので、サンプルアプリ等をあらためて眺め、モバイルで少しでもクールにPower BIで見るには...と見て
Apple Human Interface Guidelinesを読んでみた① 〜設計原則について〜
#はじめに
iOS開発を行なっているうちにUI(UX)の重要性を感じ始めた。またiOSにおいては「なんとなくカッコイイから使ってみよう」と好き勝手にデザインして行けばいいものでは無く、Apple様がある程度ガイドラインを示して下さってるため、それに最低限従わねばならないというのにもうすうす感じ始めた。
察し始めた以上は勉強せねば、ということで改めてAppleが推奨するUIデザインを勉強しようと思い学習記録を付けていくことにした。基本的にはタイトルにもある通り、[Apple Human Interface Guidelines](https://developer.apple.com/design/human-interface-guidelines/ios/overview/themes/)を読みながらAppleが推奨するUIデザインを学んでいく。
FontAwesome 4.0
http://fortawesome.github.io/Font-Awesome/icons/
FontAwesome 3.2
http://fortawesome.github.io/Font-Awesome/3.2.1/icons/FontAwesomeKitを使ってiOS 7用のアイコンを動的生成する
http://qiita.com/shobyshoby/items/8f04e97146794057a69bよく使うアイコン画像を「Font-Awesome」を使って生成する方法
http://qiita.com/EntreGulss/items/fdf0c04a0bc2b926d35c
あと、BButtonってやつでも、FontAwesomが使えます
BButton
https://github.com/mattlawer/BButton
こういうのは アイコンフォントと言って、いくつか種類があって、
FontAwesomeKit の中で、FontAwesome 以外にも、
Foundation Icon とかいろんなアイコンフォント使え
アマゾネス、MacOSアプリを作ってVTuber(偽)デビュー
## :snowman::christmas_tree:Advent Calendar 2019/12/02:christmas_tree::snowman:
アマゾネスでございます。
本日は、ワイがVTuberデビューした話、**いや、そのMacOSアプリを作った話をします。**## はじまり :cinema:
弊社では一週間の動向を社内ニュース(動画)として全社員に共有しています。
そして、最近私が実装した機能がリリースされたので、出演依頼がきてしまった...
依頼が来ること自体は、非常な光栄なことですし、一社員として協力したと思ました。が、##### ワイ(実体)が動画で記録されるなんてマジ無理 :innocent:
ということで、イラストでの出演交渉を行い、承諾してもらいました。
ちなみに、ここの段階では動かないイラストでの出演予定でした。## あの日の白ワイン :champagne:
出演前の週末、私はランチにカキフライを食べていました。
「白ワインあいそうやな...飲んじゃおっかしら(*゚∀゚*)」
白ワイン、マジで美味しい。牡蠣にあう。
一杯のつもり**が、が
【iOS 13】アプリアイコンをダークモード対応させることは可能なのか検証してみる!!
## はじめに
皆さんはダークモード対応されていますか?
だいぶ対応したアプリが増えてきたように感じます。
対応するのは大変(主に工数が)ですがやっぱり対応したら謎の満足感あります。私は個人開発のアプリでは対応しましたが,
まだ業務で担当している案件では対応できていないです。Xcode では,画像や色のアセットでライト/ダークモードで
それぞれ使う色,画像を設定できるのですごく楽ですよね。**アプリアイコンはダークモード対応できないのかな??**
と思って調べてみました。ちなみにアプリアイコンは Xcode にダークモードなどの設定はないですね。
YUMEMI.swift #5 でトークした内容になります。
https://yumemi
SwiftUIでViewを画像としてUIActivityを利用してSNSに共有する
## はじめに?
SwiftUIで特定のViewをSNSにシェアするtipsを共有します?## 使いたかったLPLinkMetadata
iOS13から使えるようになったLPLinkMetadataを利用します。
これを
![IMG_0373.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/171702/cc2e1104-b1a5-c216-f985-9c0132d347c2.jpeg)
↓のようにすることができます。
![IMG_0372.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/171702/8901554c-ac3c-1bfd-f39c-e37193ab5934.jpeg)## UIActivityViewControllerをRepresentaぶる
UIActivityViewControllerをSwiftUIで扱えるようにします。
```swift
struct ShareSheet: UIV
SwiftUIでのMFMailComposeViewControllerの使用
# 前置き
### やりたいこと
アプリ内からメールを送れるようにしたい。
sheetを用いてメーラーを表示し、ユーザーはそこで編集・送信・キャンセル等を行う。### 環境
- Xcode: 11.2.1
- Swift: 5.1.2
- 実機: 13.2.3# 実装
下記のMailViewというViewを用意して、必要な箇所(今回の場合はContentView)でそれを呼び出すようにします。```swift:MailView.swift
import SwiftUI
import MessageUIstruct MailView: UIViewControllerRepresentable {
@Binding var isShowing: Boolfunc makeUIViewController(context: UIViewControllerRepresentableContext
) -> UIViewController {
let controller = MFMailComposeViewC
#17 Xcodeでアプリの向きを縦に固定する1例
#はじめに
個人のメモ程度の出来なのであまり参考にしないで下さい.#環境
Xcode:11.2.1
Swift:5.1.2
2019/11##part1
project名を選択し,`General`の`Deployment Info`の`Device Orientation`の`Portrait`のみを選択した状態にする.
【Swift】associatedtypeの使いどころ
使いどころがよくわかってなかったけど気になっていたSwiftの`associatedtype`
個人開発アプリでいい感じに使えたのでここに書いておきます。# associatedtypeとは
* protocolに定義する連想型です
* protocolの準拠時に、具体的な型を指定します(または型推論で指定されます)
* ジェネリクスにおける`T`的なやつです# 使いどころ
上記の通りなのですが、protocol定義時点では決められず、準拠側で指定したい型があるときが使いどころです。
具体的には、**APIを叩いて、レスポンスに含まれるJSONから特定の型を作りたい!**ってときに使えました。# 具体例
以下、AlamofireとQiita APIをサンプルに使った例です。
## やりたいこと
* Qiita APIを使ってユーザー情報を取得したい( https://qiita.com/api/v2/docs#get-apiv2usersuser_id )
* リクエストメソッドのクロージャ内で、レスポンスのJSONをデコードした型として扱いたいこれを単純に書くとこ
【Xcode】細分化する iOS Architecture に向き合う上で気をつけなければらないただひとつのエラーについて
## はじめに
こんにちは。Reactive な世界に生命の息吹を感じるたかねです。
今年もやってきました,[iOS Advent Calendar 2019](https://qiita.com/advent-calendar/2019/ios) 1日目です!
みなさまよろしくお願いいたします!本記事は `unable to spawn process (Argument list too long)` という Xcode からのすてきな (!) メッセージについてです。
普段の開発では見慣れないエラーかと存じます。しかし,本問題を知り,本問題を見据えて開発することは,きっと数年後の iOS 開発者であるあなたの役に立つと思います。少し長いですが,ぜひご覧いただけましたら幸いです。## 目次
- [最近のソフトウェアアーキテクチャに関する流行と振り返り](https://qiita.com/YutoMizutani/items/ae6282dee4d14b59996e#%E6%9C%80%E8%BF%91%E3%81%AE%E3%82%BD%E3%83%95%E3%83