Swiftでアプリを構築する方法

今年の初め、Appleの幹部はSwiftを発表しました。 Objective-Cは依然として人気がありますが、開発者は頻繁に使用することがいかに難しいかについて不平を言う。Swiftの機能は、少なくともこれらの問題のいず

その使いやすさにもかかわらず、開発者はまだ言語がどのように動作するかを学ぶいくつかの時間を費やす必要があります。 これは、Swiftを使用してiOSアプリをプログラムする方法を示すいくつかの記事の最初のものです。

Swift開発の仕事を見つけるにはここをクリックしてください。Os X Mavericksを実行できるMacが必要です。

前提条件

OS X Mavericksを実行できるMacが必要です。 執筆時点では、登録されたiOS開発者である場合にのみ、Swiftでプログラムできます。 Swiftアプリを開発して実行するには、Ios8とAppleのIDE Xcodeのバージョン6が必要です。 (IphoneでSwiftアプリをテストするには、登録済みの開発者である必要がありますが、iPhoneまたはiPadエミュレータで同じアプリを作成して実行するには、登録済みの開発者である必要はありません。このチュートリアルの目的のために、私はXCode6のベータ版を使用しています(この執筆時点では、GM seedまで)。 開始する前に、プロジェクトファイルをダウンロードし、(最新のXcodeベータ版を使用して登録されたApple開発者の場合)それらをインストールしてください。 その後、プロジェクトファイルを開き、Xcodeにロードします。

Swiftアプリには何がありますか?Swiftアプリをビルドするには、まずXcodeプロジェクトを作成し、言語としてSwiftを選択します。 いくつかの詳細を記入した後、ソフトウェアは私の場合、私はFirstExampleという名前のプロジェクトを作成します。 これには、開始する2つのソースコードファイルと2つの情報が含まれます。アプリに関する情報を保持するplistファイルとstoryboardファイル(この例では必要ありません)。

これらの資産は、あなたが実行することができるアプリを構築するために必要な最小値です. しかし、最初に実行すると、空白の画面が表示されます—何かを行うためにコードを追加する必要があります。 私たちはすぐにその部分に来るでしょう。

あなたの履歴書をアップロードします従業員はあなたのような候補者を望んでいます。 履歴書をアップロードします。 あなたは素晴らしいしているそれらを表示します。

その他の準備

あなたがフォローしていて、新しいアプリを作成している場合は、メインがあります。プロジェクトファイルリストのstoryboardファイル。 それを削除し、情報を編集してください。plistファイル。 “メインストーリーボードファイル名”で始まるキーを削除します。”

二つのソースコードファイルはAppDelegateです。swiftとViewController。スウィフト IOSでは、デリゲートは別のクラスの代わりに何かを行うクラスであり、AppDelegateは特別なUIApplication状態を処理する場所です。 それはiOSによって呼び出される関数の束を持っています。 たとえば、アプリが使用中で電話が鳴っている場合は、applicationWillResignActive関数が呼び出されます。 これは、タスクを一時停止したり、タイマーを無効にしたりする場所です。AppDelegateでスタブされている関数のリストを次に示します。スウィフト アプリケーションがバックグラウンド処理をサポートしている場合は、a p p l i cationdidenterbackgroundが呼び出され、それ以外の場合はapplicationWillTerminateが呼び出されます。 これらの関数は、データを保存するためのコードを追加する場所ですが、最初の関数のみを使用します。

func a p p l i cationwillresignactive(application:UIApplication)

func a p p l i cationdidenterbackground(application:UIApplication)

func a p p l i cationwillenterforeground(application:UIApplication)

func a p p l i cationdidbecomeactive(application:UIApplication)

func a p p l i c c a p l i cationwillenterbackground(application:UIApplication)

func a p l i c最初の関数定義にNsobject:anyobjectがある場合は、nsobject:nsdictionaryを読み取るように変更します。 これはコードを追加する必要がある関数です。 ->Boolは、bool値、つまりtrueまたはfalseを返すことを意味します。 アプリの起動時にコード内で何か問題が発生した場合、「false」が返されます(ただし、この場合は常にtrueが返されます)。AppDelegateにコードを追加します。

swift

これはAppDelegate全体のものです。swiftファイルは次のようになります。 Swiftでは、次のようなクラスのインスタンスを作成します。window=UIWindow(.. )UIWindowのインスタンスを作成します。 これは渡された1つのパラメータであり、値UIScreenを持つframeという名前です。mainScreen()。Bounds:画面全体のサイズを指定します。 ウィンドウはクラス内でUIWindowとして定義されていることに注意してください。. これは他の言語のnil値に似ていますが、クラスだけでなくすべての型に対して機能します。

If let window=は、ウィンドウが存在していることを確認し、ウィンドウ(UIWindow型)をunwrapsします。)UIWindowプロパティとメソッドを使用できるようにします。 “If let”行と対応する”}”(//を使用)をコメントアウトしてみてください。backgroundColorがUIWindowのメンバーではないという最初のもので、3つの同様のコンパイルエラーが発生しますか? それはUIWindowのメンバーなので、UIWindowから取得するには? UIWindowには、ラップを解除する必要があります。”!”を追加します。”変数名の最後にラップを解除するには(ウィンドウ!.backgroundColor=が動作します)。 そうは言っても、”if let”によって提供されるアンラップなしで、各ウィンドウ。ブロック内の参照もwindowである必要があります!. “If let”は三つのunwrapsすべてを行います。

そのステートメント内の行は、最初に作成されたルートビューコントローラとしてViewControllerを設定します。 実装するview controllerは、アプリのナビゲーション全体を制御します。 AppleのView Controllerについては、概念全体を理解したい場合は読む価値がありますが、この例では1つの例だけを取り上げます。 しかし、view controllerは正確に何をしていますか?ビューコントローラとは何ですか?

iOSデバイスの画面領域は、フォーム間の移動と特定のフォームのビューの管理の両方に使用される1つ以上のview controllerによって管理されます。 ビューは、UIViewのインスタンスまたはUIViewのサブクラスであり、フォーム上の長方形の領域を管理します。 フォームがレンガとモルタルのオフィスに相当する場合、フォームビューコントローラはそのオフィスのマネージャーになり、ビューは実際に作業を実行する従業員

アプリ内の各フォームは、1つのview controllerおよび(場合によってはそれ以上の)view controllerによって管理されます。 フォームに固定パーツとスクロールパーツがある場合は、パーツごとに異なるview controllerを使用することができます。このアプリには、コントロール用のview controllerと、ボタンをクリックしたときのポップアップ警告を管理するview controllerがあります。

このアプリには、コントロール用のview controllerと、ボタンをクリックしたときのポップアップアラートを管理するview controllerがあります。私のアプリのメインビューコントローラには、ラベル(UILabel)、テキスト編集ボックス(UITextField)、およびボタン(UIButton)からなるビューがあります。 アプリを実行するときに、テキスト編集ボックスにテキストを入力し、ボタンをクリックします。 入力したテキストを表示する警告メッセージがポップアップ表示されます:

ストーリーボードを使用して、アプリを介したユーザーフローを視覚的に設計することもできます。 ただし、この例では、すべてがViewControllerのコードで作成されます。スウィフト

ビューとビューコントローラ

各ビューコントローラには、UIViewsのコレクションであるviewプロパティがあります。 画面上に配置するコントロールはすべてUIViewのサブクラスであり、このビューに追加されます。この例では、ビューはオーバーライドされたビューコントローラのviewDidLoad()メソッドで作成されます。 これをコード化して、UILabelとUIButtonコントロールが作成される関数makeLayout()を呼び出しました。 UITextFieldは、関数buttonAction()でアクセスする必要があるため、クラスレベルで作成されました。 コントロールは、ビューコントローラのビューを呼び出してビューに追加されるまで表示されません。addSubview()メソッド。

ViewControllerクラスは次のように始まります:

変数msgは、入力された文字列を保持します。 MakeLayout()メソッドの外部にあるテキストフィールドにアクセスする必要があるため(以下を参照)、クラスレベルで作成されます。最初は、次のステートメントを使用してUILabelコントロールを作成します。

let FirstLabel=UILabel()

次の六行はFirstLabelプロパティを設定します。 コンパイラはそれを知るのに十分賢いことに注意してください。redColor()はUIColorの略です。redColor()。 最後に、コントロールはaddSubview()ステートメントを使用してビューに追加されます。

UITextFieldコントロールはすでにクラスレベルで作成されているため、ここではプロパティを設定してビューに追加するだけです。 ボタンが作成され、プロパティが設定され、ビューに追加されます。

UIButton。addTarget()メソッドには、ボタンがクリックされたときに呼び出される関数の名前を指定するactionパラメータがあり、”buttonAction:”のような末尾の”:”があります。 これにより、想像上の名前のbuttonAction()メソッドが呼び出されます。

func buttonAction(sender:UIButton){

msg=MyEdit.text

showAlert(sender)

}

buttonaction()メソッドは、テキストフィールドのテキスト文字列をmsg変数に割り当て、ShowAlert()メソッドによって表示されます。 これは、古いUIAlertView(現在は非推奨)を置き換える新しいiOS8UIAlertControllerを使用します。 ShowAlert()メソッドは、UIAlertControllerのインスタンスを作成し、クリックするものがあるようにアクションを追加してから、presentViewController()を呼び出します。

コードに対するコメント

キーワード”var”は変数を宣言するために使用され、”let”は定数または不変変数を宣言するために使用されます。 コントロールは不変として宣言されていますが、コントロールインスタンスを変更することはできませんが、そのプロパティを変更できます。 アラートはUIAlertControllerによって実装されます。P>

  • Python、Swift、JavaScript、Java:それらを学ぶための最良の方法
  • ここでは、Swiftについてあなたを教えるためにAppleです
  • AppleのSwiftプログラミング言語を最初に見て

コメントを残す

メールアドレスが公開されることはありません。