2014年6月にAppleがWWDCで発表した次世代のプログラミング言語Swiftについて解説しています。
[Swift]APIで取得したJSONをswiftyJSONでパースして、天気情報をUITableViewで表示。お天気アプリを作ってみる。XcodeiOS初心者Swift まえがき的な(2015年の年始あたりに書いた記事です) Swiftの勉強がてら、色々調べながら簡単なアプリを作ってみました。 どうせなら作るだけじゃなくて、これから同じようなことする人の役に立つような記事にしようと思って書いてみました。 Swiftでごくごく簡単なアプリを作ったことある人向けを想定していて、ざっくり説明になっています。 不明点あった場合、コメントいただけれは補足追加します(^O^) swift2対応しました(2015年12月5日) swift2向けに更新したのと、当時のスキルでは仕方なかった微妙な実装方法も改修しています。 Xcodeは7.1でiOS9.1向けに作ってます。あと、pullして更新する項目
Swift で使えるオープンソースライブラリ 2014年は新言語 Swift が登場し、iOS アプリ開発者にとってはかなり印象深い年になったのではないでしょうか。Swift の登場以後、さまざまな取り組みが iOS アプリ開発者の中で行われ、その結果の1つとしてオープンソースライブラリもかなり増えました。 Swift で一から書かれたものもあれば、既存のものを Swift でも使えるようにアップデートしてくれているものもあります。ある意味、混沌としている現状では「じゃあいまから Swift で iOS アプリ開発するときに何を使えば良いの!?」といったことになりかねません。ということで、現在までに公開されている Swift で使えるオープンソースライブラリを目的別にまとめてみました。 Swift アドベントカレンダーのために書いた記事なので、タイトルには「Swift 時代の」としています
It is possible to compose and send an email from inside an app using the MFMailComposeViewController class. In this tutorial an email is composed with a body and a subject. This tutorial is made with Xcode 11 and built for iOS 13. Open Xcode and create a new Single View App. For product name, use IOSSendEmailTutorial and then fill out the Organization Name and Organization Identifier with your cus
Learning about iOS development? I am the author of iOS 17 Fundamentals, Building iOS User Interfaces with SwiftUI, and eight other courses on Pluralsight. Deepen your understanding by watching! Updated on October 11, 2016 – Swift 3.0 In this writing, I want explore how to use MFMailComposeViewController with Swift to send e-mails within your app as a walkthrough. My focus here is “quick and dirty”
注意: この記事はSwift1の時代のものであり、仕様が変わっています。都度変更したいと思っていますが、間違いもあります。 Swiftのメソッドの引数の定義は実は複雑ですぐにわけが分からなくなるのでまとめようと思った。 前提として用語は次の通り。 ローカル引数名(Local Parameter Names): メソッドもしくは関数内部で利用する引数名 外部引数名(External Parameter Names): メソッドもしくは関数呼び出し側からも利用する引数名。引数の説明になっている。 Hash Symbol(#) : ローカル引数名と外部引数名が同じ場合に使う Swift2からこの仕様は変更になり#は使えなくなった Underscore(_) : 外部引数名を省略する場合に使う 次に具体例を示す。 具体例 外部引数名を指定しない例(インスタンスメソッド)
swiftでオーバーロードを試してみた。 名前が同じメソッドで、引数もしくは戻り値が異なることが条件。 メソッド名前が同じで、引数の数が異なるものはダメなようだ。 ※今後調査予定 どのメソッドが呼ばれるかは、引数の型と戻り値の型で推論してくれる。 ちなみに、swiftで便利な型推論は、呼ばれる有効なメソッドが複数ある場合、受け取る変数の型を指定しないと、下記の図のようにエラーとなる。呼びたいメソッドが明確でないからね。 クラス設計する場合には、この辺の挙動に気をつけないとね。 Lovely Swift!!! Register as a new user and use Qiita more conveniently You get articles that match your needsYou can efficiently read back useful informationYo
ディクショナリは、文字列や数値をキーにして値を格納したり参照できる型です。 宣言 ディクショナリは次のように、「[」と「]」の間に「:」(コロン)で区切ったキーと値のペアを「,」(カンマ)区切りで記述して初期化できます。 let party: Dictionary<String, String> = ["ルフィ": "船長", "ゾロ": "剣士", "ナミ":"航海士"] if let job = party["ゾロ"] { print(job) // 剣士 } let items: Dictionary<String, Int> = ["りんご": 100, "みかん": 300, "バナナ": 150] if let price = items["みかん"] { print(price) // 300 } 次のように、「[」と「]」の間に「:」(コロン)で区切ってキーと値の型を指定す
Swiftで固定サイズのサムネイルを生成するサンプル。画像を縮小し、中心から切り取る(Resize and crop)。 PHPでいうところの、Imagick::cropThumbnailImage()の処理。 2017-1-1 Swift3のコードに変更しました。 コード func cropThumbnailImage(image :UIImage, w:Int, h:Int) ->UIImage { // リサイズ処理 let origRef = image.cgImage let origWidth = Int(origRef!.width) let origHeight = Int(origRef!.height) var resizeWidth:Int = 0, resizeHeight:Int = 0 if (origWidth < origHeight) { resizeWi
コードに記述 まずはUICollectionViewを表示させたいUIViewControllerのファイルに必要なコードを追加していきたいと思います。 import UIKit class MasterViewController: UIViewController,UICollectionViewDataSource,UICollectionViewDelegate { override func viewDidLoad() { super.viewDidLoad() } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() } // MARK: - UICollectionViewDelegate Protocol func collectionView(collectionView: UI
はじめに UITableViewなどにネットワーク上の画像を表示する場合には、ユーザの操作をブロックしないように画像を非同期で読み込むのが普通だと思います。 筆者はSwiftではhttp系のライブラリとしてAlamofireを使っていますが、同じ作者がObjective-Cで書いたAFNetworkingとは異なり画像の非同期読み込みをまだサポートしていません。参考 Swiftで書く場合はライブラリもSwift製にしたいと思いますので、ここではiOS標準のNSURLConnectionを使って画像の非同期読み込みを記述してみます。 画像の非同期読み込み let url = NSURL(string:"http://画像のURL") let req = NSURLRequest(URL:url!) NSURLConnection.sendAsynchronousRequest(req, qu
はじめに 以前、アプリ開発をしている最中に、 Xcodeを 6.2 -> 6.3 Swiftを 1.1 -> 1.2 にバージョンアップしました。 それに伴い、 エラーが大量発生してしまいましたが、 Xcodeの補完機能(エラーが起きたときにたまに出る赤色の◯マーク) を使用したため、 当時は無事ビルドさせることができました。 しかし、 それだと分かった気持ちで開発していると感じたため、 今回主な変更箇所を調べてまとめてみました。 変更箇所 Swift 1. キャストの仕様変更 ・新しくas!演算子が出来たため、 asはas!またはas?で記述しなければなりません。 実行時に失敗する可能性のあるキャストはas!という新しい演算子をつける ・今までasと記述していた箇所はas!に変更すればエラーが消えます。 →もっと詳しく メモ: ・ダウンキャストとは ・Optional型とは 2. NSS
ActionScript 3.0やJavaScriptといった言語のエディターには、変数や関数の宣言前に記述したコメントをコードヒントとして表示する機能があります。SwiftをプログラミングするためのIDE「 Xcode」にもこのような機能がありますが、コメントを正しく記述しないとコードヒントが表示されません。 コードヒントが表示される書き方 以下のコードをご覧ください。Hogeクラスには、2つの引数を加算するcalcSum()メソッドが定義されています。 class Hoge { init() { calcSum(1, b: 2); } /** aとbの合計を計算する - parameter a:値1 - parameter b:値2 - returns: aとbの合計 */ func calcSum(a:Int, b:Int) -> Int { let sum:Int = a + b;
どうやらswiftのプロトコルはJavaやActionScriptでいうInterface(ルール決め)の様です。このクラスは必ずA,B,Cの関数や変数を持たないとダメですよ!とルールをつけてあげることができます。 多くの人が同時に開発していたりすると、開発者も千差万別色々な方法でコーディングされますが、こういった規制があれば基礎部分は一定になり横とのつながり、別の開発者との連携等も 明確に連携しやすくなる利点があります。 SwiftやObjectivce-CではDelegateという記述に悩まされます。このDelegateはProtocolによって設計されているのです。 例えばWebViewのクラスをUIViewControllerに配置した場合、WebViewのイベントを親のViewControllerが 受け取ることができるようにdelegateを利用するのですが以下のようなprot
はじめに この3週間ほど仕事でSwiftを使ってアプリ開発をしてみました。その感想として、すべての人に当てはまるとは言えませんが、 多くのiOSアプリ開発者にとっては今すぐにSwiftを使い始める価値があると感じました(Swift 1.0がリリースされてから1ヶ月ほど経った2014年10月時点での感想です)。 そこで、この投稿では Swiftの利点とよくある不安や疑問に対する回答 を書いていきます。 対象となる読者 この投稿は次のようなiOSアプリ開発者を対象としています。 Objective-Cで十分でしょと思っている人 なんとなくSwift良さそうだけど踏み出せない人 Swiftがいいのはわかったけどまだ実案件では使えないと思う人 どうしてObjective-CよりSwiftを使った方がいいの? Optional Type(これだけでSwiftを使う価値あり) 私見ですが、Object
swift上で画像を上下・左右にスライド・スクロールさせたい時の実装をサンプルコードをみながら説明していきます。 以下、2パターンを例に見ていこうと思います。 【パターン】 ①画像を上下左右にスライドする ②画像を上下左右にスクロールする 【フレームワーク】 UIScrollView, UIImageView, UIImage 【事前準備】 画像:img1.png, img2.png, img3.pngの3枚を利用しています。 【サンプルコード】 https://github.com/eversense-maezawa/Swift-UIScrollView-Example 1. スライド 1.1 左右にスライドさせる 実装結果とサンプルコードになります。 //UIImageに画像の名前を指定します let img1 = UIImage(named:"img1.jpg"); let
Thank you for being patient. We are doing some work on the site and will be back shortly.
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く