サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
大谷翔平
yanamura.hatenablog.com
こちらはコネヒトアドベントカレンダー2020 23日目の記事です。 普段はSwiftでiOSアプリを開発しているわたしがFlutterを入門するのにつかったものなどを紹介します。 Dartについて Dart Language Tour(https://dart.dev/guides/language/language-tour)を読んで勉強しました。 忙しい人にはDartはSwiftと似ていて雰囲気で理解でもわかるので飛ばしてもよいかもしれません。 ですが、雰囲気では理解しずらくここだけはちゃんと勉強しておいたほうがよいのが以下です。 定数のfinalとconst 名前付き引数 Classコンストラクタ 定数のfinalとconst finalはSwiftのletと同じと思って良い constはコンパイル時に確定する値でfinalと異なりメモリの参照先も変更できません 名前付き引数 Dar
potatotips #64でLTした内容です。 SwiftUIのViewで条件によってViewをだしわけたいことがたまにあるかと思います。 SwiftUIでこのように条件によってViewを出し分けるようなコードを書いてみます。 var body: some View { if imageName.isEmpty { return Text("no image") } else { return Image(imageName) } } そうするとこのようなコンパイルエラーになってしまいます。 ! Function declares an opaque return type, but the return statements in its body do not have matching underlying types なぜかというとbodyの戻り値の型がOpaque Result
この記事はこの記事はコネヒト Advent Calendar 2019 18日目の記事です。 開発を重ねるとプロジェクト内についつい使っていないコードやリソースが残ってしまったり、開発環境にゴミが残ったりします。 今回はそれらの掃除に役立つツールを紹介します。 使っていないコード検出ツール unused.rb unused.rb rubyのscriptを実行するだけで使ってない変数、関数を検出できます。 利点 実行が速い。お手軽 欠点 除外したいディレクトリを選んだりといった細かい設定ができない 文字列を検索して使われているかどうかチェックしているだけなので、delegateなどは誤検出される。 periphery periphery Swift製の使ってないコードを検出するツール 利点 ただ文字列を検索してるのではなくSourceKitを使ってるのでご検出が少なさそう 欠点 結構遅い T
rx_itemsWithCellIdentifierではSection1つしかダメでした。 複数Sectionを使う方法としていくつかあるっぽいのですが、 まずRXTableViewSectionedReloadDataSourceを使ってみます。 RXTableViewSectionedReloadDataSource これはRxSwiftには含まれておらず別途RxDataSourcesを導入する必要があります。 ViewContorller import RxSwift import RxCocoa import RxDataSources class MultiListViewController: UIViewController { @IBOutlet weak var tableView: UITableView! @IBOutlet weak var button1: UIB
cocoapods 1.0.1 The dependency xxx is not used in any concrete target. Podfileの書き方がcocoapods 1.0系になって変わったらしく Podfileを $ pod init で生成すると # Uncomment this line to define a global platform for your project # platform :ios, '9.0' target 'SampleProj' do # Comment this line if you're not using Swift and don't want to use dynamic frameworks use_frameworks! # Pods for SampleProj pod 'Bond', '~> 4.0' targe
Xcode8でビルドするとデフォルトではSwift3でコンパイルされてしまいます。 とりあえずXcode8にあげるけどSwift2.3のままにしておいて、Swift3対応は後でという場合の対処方法です。 Build Settings Build Settingsの"Use Legacy Swift Language Version"を"Yes"にする Cocoapodsの変更 Podfileの一番最後に以下を追加 post_install do |installer| installer.pods_project.targets.each do |target| target.build_configurations.each do |config| config.build_settings['SWIFT_VERSION'] = '2.3' end end end ライブラリをXcode
Swiftでコード行数を測ろうとツールを探していたらclocというのがよさげでした インストール インストール方法は思ったよりたくさん用意されていてlinux系だけでなく、node.jsやhomebrew, macports用のも用意されていて、WindowsやMac環境でも楽にインストールできます npm install -g cloc # https://www.npmjs.com/package/cloc sudo apt-get install cloc # Debian, Ubuntu sudo yum install cloc # Red Hat, Fedora sudo pacman -S cloc # Arch sudo pkg install cloc # FreeBSD sudo port install cloc # Mac OS X with MacPorts br
β4現在 Xcode7でビルドするとiOS9以降でApp Transport Security (ATS) が利用可能となります App Transport Security Technote: App Transport Security Technote デフォルトでhttps通信が必須となるので、この挙動を変更するには上の仕様に書いてあるようにInfo.plistに設定を記載する必要があります。 ATS設定パターン 1. 全ての通信にApp Transport Securityを適用 設定不要 2. 全ての通信にApp Transport Securityを適用しない 以下のように設定することでhttpsでなくても通信可能となります 3. 指定したドメインのみ適用する 指定したドメインのみhttps通信をmustにしたい場合は以下のように設定します サブドメインも含めたい場合は、 N
事前準備 Vagrantのインストール Ansibleのインストール ここではこれらのインストール方法は割愛 環境構築 とりあえず開発環境作りたい場合は、以下を実行し、しばらくすると環境が構築されます。 $ git clone https://github.com/yanamura3/FuelEnv $ cd FuelEnv $ vagrant up localhost:3334をブラウザで開いてFuelPHPの画面がでればOKです。 FuelPHPでの開発はFuelEnv以下にfuelというフォルダができているのでそれを使えばよいです。 詳細 いじったところなどのメモ Vagrant VagrantFile # -*- mode: ruby -*- # vi: set ft=ruby : VAGRANTFILE_API_VERSION = "2" Vagrant.configure(VA
このページを最初にブックマークしてみませんか?
『yanamura.hatenablog.com』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く