もともと日本向けに作られていたPairsのモバイルアプリを、どのように国際的に展開できるようにしたのか。国際化・ローカライズの対応を進めたときの実際の流れや工夫を、モバイル開発の視点からまとめています。

今回からいよいよプログラミングを行います。最初のプログラミングはInterface Builder上で行います。 前回のおさらい 第3回では、Interface Builderを使った画面の作り方を学びました。実際に画面(View)に配置したパーツを再確認してみましょう。 Viewに配置されたパーツと名前 ユーザに何らかの文字を入力させるための「テキストフィールド」 ユーザにいくつかの選択肢の中からひとつを選ばせるための「セグメンテッドコントロール」 画面上に文字を表示するための「ラベル」 これらのパーツを配置しただけの状態では、アプリは何の役にも立ちません。そこでいよいよ「役に立つアプリ」にするために、プログラミングの作業へと入っていきます。 操作と処理を確認する まず、ユーザがパーツに対してどのような操作を行うかと、プログラムにどのような処理(動作)をさせるかについて確認しておきましょ
カレンダーなどのアプリで、画面に今日の日付などを表示している場合、真夜中に日付が変わった瞬間にUI表示を変えたりなどの処理をしたいことがありますよね。 そのためだけにNSTimerなどを使ってタイマー処理をするのも面倒くさいので、たいていはスルーしていると思うんですが。 実はそんな時に使える便利な機能があります。 UIApplicationDelegateで、applicationSignificantTimeChangeをオーバーライドしておけば、日付が変わった瞬間にこの関数が呼ばれて、UI変更の処理をすることができます。 - (void)applicationSignificantTimeChange:(UIApplication *)application{ NSLog(@"日付の表示を変えてください。"); } こんな時によばれるので、日時を扱うアプリでは、実装しておくのがお勧めで
はじめまして、技術部の西岡です。 普段の業務では社内システムやサービス開発をメインに行っています。 今年の6月に入社して以来、ひたすら何かを作っているのですが、クックパッドでは自分のやりたいことをベースに業務を決めることができるので、日々、楽しい開発ライフを送れています。 さて、クックパッドには様々な社内システムがあるのですが、その内の1つに全社員の目標を管理できるシステムがあります。このシステムでは、目標と共に顔写真や得意なことを設定する仕組みになっているため、普段あまり関わりのない人が、どのような業務を行っているのかをざっくり知ることが出来ます。 このシステムは私が開発したのですが、開発する際に少し余裕があったことと、個人的に興味があったことから、iPhoneのSafariからも閲覧できるようにしてみました。 残念ながら肝心のシステム内部の話はあまり紹介できないのですが、対応する際に調
前回の記事で環境構築と土台となるプロジェクとの作成ができたので、今回から実用的なアプリの制作に入ります。数回にわけてTwitterクライアントを作成しますので、ネットワーク周りや画像の取り扱いまでTitaniumの簡便さを体験していただければと思います。 どんなものを作るか まずは、実際に作るアプリのイメージを固めましょう。TwitterアプリはiPhoneアプリの中でも優れたアプリが多く激戦区となっているジャンルです。一方でTwitterを使い込んでいくと自分のよく使うWebサービスと連携させたくなり、自分の使い方にカスタマイズしたアプリも欲しくなるものです。ということで、Twitterのひと通りの機能を実装しつつ拡張しやすいシンプルなアプリを目指しましょう。 図1 画面イメージ 画面構成としてはこのようなアプリをイメージしておきましょう。 まずはTableView Twitterアプリ
はじめに iOS SDK登場から早4年近くが経ち、使い回しの効くUIコンポーネントや、煩雑な手順を楽にするスクリプト、自作するには難易度の高い技術をライブラリ化したものなどなど、今では多くの便利なオープンソースソフトウェアが公開されています。 本連載ではそんなオープンソースソフトウェアの中で、有用かつあまり日本語での情報が少ないものを中心にご紹介していく予定です。具体的な使用方法や、ソースの内容にも踏み込んで解説していきますので、ぜひ皆様の日々の開発にお役に立ていただければ幸いです。 トゥイーンライブラリを使用するメリット UIViewのアニメーションで指定できるイージングの種類は、 UIViewAnimationOptionCurveEaseInOut UIViewAnimationOptionCurveEaseIn UIViewAnimationOptionCurveEaseOut U
今回は、実際のiPhoneアプリ開発に必要なSDKの入手方法、さらにその基本設定を中心に解説します。 iPhone SDKとは 第1回では、iPhoneの開発環境であるXcodeについて説明しました。そもそもXcodeは、基本的にMac向けのアプリケーションを開発するためのツールです。そこで、これを使ってiPhoneアプリを開発するために「iPhone SDK」という開発キットを追加でインストールする必要があります。iPhone SDKをインストールすることで、XcodeからCocoa Touchを使ったり、開発中のアプリをMac上で動かすための「iPhone シミューレータ」を使ったりできるようになります。 また、あらかじめXcodeがインストールされていない場合でも、iPhone SDKをインストールする際にXcodeを一緒にインストールすることができます。まずはiPhone SDKの
WWDCでのアップルの発表によると、iOS 8 では4000以上もの API が追加されたとのことですが、新しいAPIはどう使うのか、実際に何がどこまでできるのか、といった具体的なところが、英語のドキュメントや動画をながめているだけだと正直あまりよくわかりません。やはり実際にコード書いて動かしてみるのが一番わかりやすい、ということで今年もつくりました、 iOS 8 新機能のサンプルコード寄せ集めアプリ『iOS8-Sampler』 ソースコードは GitHub に置いてあります。 https://github.com/shu223/iOS8-Sampler ※使い方は Xcode 6 でビルドするだけ なので、デザイナーさんやディレクターさんもぜひ最寄りのエンジニアにビルドしてもらってください。 中身について 今回はデザイナー okazu 氏の協力により立派なアイコンやスプラッシュ画像が最初
今回から始まった「目指せ!iPhoneアプリ開発エキスパート」。iPhoneアプリ開発について解説します。第1回目は、iPhoneアプリ開発をするうえで最初に知っておきたい基礎知識を中心にお届けします。 アプリ開発者から見るiPhoneの特色 iPhoneはときおり「革新的なデバイスである」などという表現とともに紹介されることがあります。その言葉が表す通り、単なる「iPod付き携帯電話」にとどまらず、iPhoneは魅力的な特徴がたくさんあります。ここではアプリ開発者が特に意識するであろうiPhoneの特色を見てみましょう。 携帯電話にはあたりまえの方向ボタンや数字キーがない アプリ内で使われるボタンやスイッチなどのパーツが統一されている 限られたボタンしかない代わりに、本体のほぼ全面をタッチパネルとしたiPhoneでは、アプリ開発者は従来のようにボタンの種類や数に制約を受けることなくイ
はじめまして、株式会社はてなでアプリケーションエンジニアをしている倉井龍太郎(id:r_kurain)と申します。この連載では、今もっとも注目集めているスマートフォンアプリ開発環境であるTitanium Mobile(以下Titaniumと省略)を使ったiPhone及びAndroidアプリケーションの開発方法について解説していきます。 Titaniumとは TitaniumはAppceleratorが開発しているスマートフォンアプリ開発環境です。本来iPhone/iPod/iPad であればObjectice-Cを使用して、AndoridであればJavaを用いて作成するネイティブアプリケーションが、どちらの環境でもJavascriptのみで開発できるようになるものです。Titanuiumは無料で利用することができます。サポートを受けるにはAppceleratorの有料プランに入会する必要が
In many cases, your code will not have to change significantly in response to this change. Code that in Swift 2 relied on value types implicitly converting to AnyObject will continue to work as-is in Swift 3 by passing as Any. However, there are places where you will have to change the declared types of variables and methods and get the best experience in Swift 3. Also, if your code is explicitly
このドキュメントは、 Ruby/C++などでプログラミング経験がある人が Swiftを初めて勉強するときに、 インストールから始めて、 標準ライブラリを調べながらなら一通りはコーディング出来るようになる ことを目的としたチュートリアルの前編です。 Swift日本語チュートリアル ~ 後編(Apple公式ドキュメントSwift Tour±α) - こんにゃくマガジン と併せて Apple公式Swiftサイト Swift - Apple Developer にあるA Swift Tour — The Swift Programming Language (Swift 5.5)相当(翻訳ではないです)±αな内容になっています。 後編の内容は、クラス、列挙、構造体、ジェネリクス、簡単なネットワークライブラリの使い方、ちょっと進んだSwiftでのiPhoneアプリ開発、コマンドラインでのSwiftの
2014年4月20日、FacebookがF8カンファレンスでApp Linksというアプリ間連携のための新しい仕組みを発表しました。App Linksではこの仕組みをオープンにし、全ての開発者が利用できることを目標としています。 FacebookアプリからTumblrの記事を開こうとしたらアクションシートに「Tumblrで開く」があります。これがApp Linksで実装できます。 簡単な機能紹介はニュースサイトから引用します。 アプリ開発者は、アプリのコンテンツに数行のコードを追加することでApp Linkメタデータをパブリッシュできる。このコンテンツにリンクするアプリはメタデータを利用してアプリに“deep-link”できるようになる。例えば映画紹介アプリ内に映画のチケット販売アプリへのリンクをApp Linksで入れておけば、ユーザーは映画紹介アプリからチケット販売アプリを直接開いてチ
Cocoaの並列処理(GCDとNSOperation/NSOperationQueue)に関するまとめです。この記事ではいわゆる「スレッド」については扱いません。スレッドについては、前に記事を書いたのでそちらを参照してください。 Cocoaのマルチスレッドシステム - $ cat /var/log/shin スレッドによる並列処理からの脱却 スレッドは、歴史のある並列処理のための概念ですが、OSのカーネルの方にも密接に関わりがあるなど、抽象度は低めと言えます。 そこで、Cocoaでは、並列処理のための抽象度の高いインターフェースが提供されるようになりました。それがGCDとNSOperation/NSOperationQueueです。これらを使えば、スレッドを何個作成してタスクをどのように実行するか等の細かいことは、ランタイム側が全て決定してくれるので、ユーザは、並列処理したいタスクを定義し
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く