2011年1月9日日曜日

英語の壁

HTML/CSSやPHPを覚えようとしたときも
iPhoneアプリ制作を覚えようとしている今も、
ドキュメントをはじめとする「英語」がハードルになっています。

英語環境にある人々は、
プログラミングやweb技術に関して、アドバンテージがある。
非英語圏の我々日本人などは、やはりハンデがある。

1、英語そのもののハードル
2、技術単語、という普通の英語教育ではほぼお目にかからないものを解読するハードル
の2つがありますが、
まあ、根気と慣れとネット&辞書が頼りですね。

技術単語も、一度意味を調べて、だいたいつかんで、その後は文脈の中で何度も出てくるたびに再確認すると、いつの間にか普通にスンナリ意味が取れるようになったりする。
そんなときは嬉しいもので。

IMEを実装したい。その1

iPhoneでUITextViewにIMEを実装させたいのだが、
どのようにするのか、そもそも実装できるのか分からず模索中です。

MacだとInputMethodKitなるものがTigerから備わっており、
独自のIMEも作れる様子。(以下、勉強になったページ)
http://www.slideshare.net/kimuraw/inputmethodkit-3193813

しかし、iPhoneで一開発者のアプリがIMEを使えるのかまだ不明。
InputMethodKitはiPhoneでは使えるのだか、どうだか。。

ATOK Padでは独自IMEが動いていますが、独自でIME作るような力はないので(Social IMEも面白そうだが。)、もともと備わっているIMEが使いたい。

で、色々学習中です。
そもそも、iPhoneアプリ制作が初心者なので、いきなり敷居が高い気もするが、
一番まず実現したいことなので、かならず方法を見つけたい。

:::::::::::::::::::::::::

今のところ、UITextInput Protocolが近いものではないかと学習中。

しかし、ドキュメントを読みこなすのに、英語のおべんきょうが必要ですね。。


:::::::::::::::::::::::::

追記1:Erica Sadun女史のサイトにUIKeyboardImplについての記事がありました。
これも怪しい。。

:::::::::::::::::::::::::

追記2:このサイトの方が独自IMEについて言及しておられる。
http://d.hatena.ne.jp/chamekan/20100220
UIKeyboardImplに対してaddInputText: addInputString:@"watasi "などとスペース込みで送信してみると、ちゃんとIMEも働いてるようである。
とのこと。素晴らしい。
やっぱり非公開メソッドの様子ですが、なんとか実装まではこぎ着けられそうですね。

(わざわざ当エントリをご覧になって、修正および加筆までしてくださいました。大変ありがとうございました。)

:::::::::::::::::::::::::

追記3:
UIKeyboardImplに関しての追記。
http://www.hirano-dept.com/blog/2010/12/ipadmodal-uitextfield-resignfirstresponder.html
ここから、
http://stackoverflow.com/questions/2762251/how-to-hide-the-ipad-keyboard-from-a-modal-view-controller
ここへ飛び、
AppleがPrivate APIを使ったらリジェクトしないか、といったことを話しあっている。英語。
ちょっと参考になりそうだったので、メモを残します。

2011年1月8日土曜日

Retina対応画像ファイルのポイント メモ

IB上できれいに写っているのに、Retinaディスプレイでは画像がぼやけていたので、
「そういえば2倍にしなきゃいけないんだったっけな」と思い、検索。

http://design.kayac.com/topics/2010/09/post-30.php
ここによくまとめてくださっている記事がありました。

要するに
”icon@2x.png”
のように、@2xをつけると、Retina対応になる仕様でした。
例えば57x57pxのアイコンが3GSまでのものなら、114x114pxのものをつくり、@2xを名前に付ける、と。

IBを使わない場合は分かりませんが、各画像に@2xを挿入した解像度縦横二倍の画像をおなじresourcesフォルダに入れておいたら、自動的にRetina対応してくれました。

:::::::::::::::::::::::::

一つ失敗したのですが、
最初、
@x2と書いて、高解像度版がRetinaに反映されずしばし悩みました。
よく調べてみると、@2xが正解でした。(2がxの前)
ちょっと間違えやすいですね。

それからは、「@2倍(2x)」と口で唱えながら、2倍画像ファイル名制作しています(笑)。

初めての方はお気をつけを。

2011年1月6日木曜日

iPhoneアプリ制作に関する金言集へのリンク

iPhoneアプリ制作の現場からつむぎとった金言集をEagleさんのブログがアップしておられ、大変勉強になりました。
アプリ制作者、制作準備者にはかなりためになる情報が詰まっています。

http://www.eagle-inc.jp/rainbows


感謝。

2011年1月4日火曜日

マルチタッチ設定

マルチタッチを許可するには、

multipleTouchEnabled = YES;

が必要。

普通のviewに設定するには
self.view.multipleTouchEnabled = YES;
のよう。

タップ数の取得法メモ

タップ数の取得は、touchesクラスでanyObjectに対して、tapCountで取得。

NSInteger tapCount = [[touches anyObject] tapCount];

2011年1月1日土曜日

最近、Xcodeの「ヘルプ」の立ち上がりが遅い。。

表題の通りですが、最近「ヘルプ」のメニューだけやたら立ち上がりが遅いです。
Xcode3.2.5にて。おかしいなあ。。

あと、ドキュメントのダウンロードしたものが表示されない。

おかしいなあ。。。

ネット上で、キーチェーンの値をチェックしよう、という記述を見かけますが、その記述も見つからず。

うーん。。
:::::::::::::::::::::::::

追記:
キーチェーンアクセス.appの中の、「ログイン」という項目の中に、xcode.connect1.com.apple
 という項目があり、そのアカウントが古いもののままだったのが原因でした。
以前、実験的にxcodeをダウンロードしたときのログイン情報が入っており。

アカウントを変更すると、無事表示されるようになりました。
情報を上げてくださっていた方々に感謝。