2010-01-01から1年間の記事一覧

開発者向けドキュメント(epub,英語)が無料でダウンロード可能になってたのでiBooksで英和辞書を使えるようにしてみたよ[jailbreak不要]

開発者サイトにログインしたらPDFがダウンロードできたけど、PC向けだったりしてあまり読みやすいとは言えない代物だったのでこれはうれしいとばかりに早速入手。 まずはiPhoneとiTunesを同期させる。 iTunesのブックから、ダウンロードしたやつを右クリック…

簡単な実験するだけであってもwindow-basedアプリ作成は避けようかな

window-basedアプリを作成して適当に作ったUIViewのサブクラスをはりつけて実験ということをよくやるのだけれども、できるだけView-basedアプリを作った方が、いらんところではまることはなくなると思われる。 今回シミュレータでは正常動作なのに、実機でお…

円運動

円運動を10分くらいで書いてみたけど、 開始点の位置がなぜあそこなのかと、1週したら数秒停止する理由がわかんない。とりあえず後で理由を調べるとしてコードを公開する。 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions…

多重連結バネをやってみた

wonderflにあった面白いものをiPhone(iPad)用に書き直してみるシリーズ。元ネタはここ。 wonderfl build flash online | 面白法人カヤック MeshViewを作る。ViewController.viewにでもはりつけて表示すれば使えまする。 @interface MeshView : UIView { @pri…

iPadの回転対応

iPadアプリを作る場合には、かならず回転に対応した状態で作らなければならぬらしい。結論を先に言うと、Window-basedを使わずView-basedを使えと。回転対応するにはUIViewController追加する。これはきっと常識。 Window-basedなアプリを作成して、そこに必…

NSZombieEnabled を有効にしてEXC_BAD_ACCESSに耐える

アプリ開発をしているときに、EXC_BAD_ACCESSが発生してしまうと原因不明でアプリが落ちてしまう。デバッガでどこで落ちるのか探して、原因となる行を特定して修正ということになるけども、もっと楽な方法が欲しい。そこで出てくるのがNSZombieEnabledを有効…

1枚のマスク画像から色とりどりのインベーダを生成する方法

目的 このマスク画像から色を指定して様々なインベーダを生成します。 ※ CGContextDrawImageをするので上下逆様でマスク画像を作成してください。(20100820 追記あり) コード window-basedアプリを作成してapplicationDelegateに以下のとおり記述してくださ…

CALayerにアニメーションを追加して、NSOperationからレイヤの位置を確認する方法

コード TestViewをwindowに追加して、コンパイルし、画面をクリックするだけ。TestViewヘッダファイル @interface TestView : UIView { NSOperationQueue *operationQueue_; } @property (nonatomic, retain) NSOperationQueue *operationQueue; @end TestVi…

NSMutableArrayに追加するオブジェクトの autorelease VS release のベンチを取ってみた。

コード #import <Cocoa/Cocoa.h> @interface TT : NSObject { id obj; CGPoint position; } @property (nonatomic, retain) id obj; @property (nonatomic) CGPoint position; @end @implementation TT @synthesize obj; @synthesize position; - (void)dealloc { self.obj </cocoa/cocoa.h>…

淀川花火大会に行ってきました。

自分は18:00頃に会場について、堤防のところで場所取りします。この時間はまだ結構空いてて、二人分のシートくらいならいくつかまだ敷けるくらいのスペースがあります。クライマックスは一眼で撮ろうと思ってたのにiPhoneで動画を撮ってたらあっと言うまに終…

NSRunLoopのrunMode:beforeDate:がわからん。

以下のコード。 NSLog(@"start stage"); UIView *view; //view = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 0, 0)]; view = [[UIWebView alloc] initWithFrame:CGRectMake(0, 0, 320, 240)]; NSDate *date = [NSDate dateWithTimeIntervalSinceNow:5.…

スレッド使ってCALayerでアニメーションする場合

最終的にこんな画面に。この一つ一つのマスがばらばらと表示されてくる感じのものを作る。スレッド処理として以下のようなNSOperationのサブクラスを作る。CALayerを追加時にはopacityを0.0fにしておくので、アニメーションは0.8f秒かけて単純に透明度を1.0f…

NSOperationQueueを使ったスレッド処理の簡単な例

目的 NSOperationQueueを使った処理をする 仕様 全10スレッド生成する 3スレッドずつ動く スレッドが完了する前にプロセスが終了しないようにする ソース #import <Cocoa/Cocoa.h> @interface TTOperation : NSOperation { int number; } @property int number; @end @imple</cocoa/cocoa.h>…

homebrewを使ってみた

Redirecting...インストールはhttp://wiki.github.com/mxcl/homebrew/installation に記載されている ruby のコマンドを実行するだけ。簡単。さっそく python のインストールをしてみる。 $ sudo brew install python Warning: It appears you have Macports…

ケースがちゃちい

Amazonで人気だったケースをヨドバシで購入。もちろんヨドバシでも人気No.1の張り紙。形なかなか他にはない良い感じだったので購入したけどTUNEWEAR iPad用PUレザーケース TUNEFOLIO for iPad ホワイト TUN-PD-000007出版社/メーカー: FocalPointComputer発…

CloudReaderやi文庫HDで読みたいファイルをUSB転送する

iTunes開く => iPadを選択 => Appタブを選択 => ファイル共有までスクロールする。 あとはよしなにw

iPadと書籍の裁断

iPadが手に入り、ScanSnapで電子化した書籍を簡単に読めるようになった。iPhoneであった拡大処理に時間がかかってしまうなんてこともないしね。昨日裁断したのは以下の本アート・オブ・SQL ―パフォーマンスを引き出すSQLプログラミング手法 (Theory in pract…

はやぶさおかえり

http://www.asahi.com/photonews/TKY201006130193.html http://www.asahi.com/photonews/TKY201006130305.html

リスト内包表記スゲー

今さらながら、リスト内包表記のスゴさに触れたので記録しとく。perlの場合、 @a = (0..9); # 0から9までの数値を要素とした配列 @b = map {$_ * 2} (0..9); @c = map {$_ * 2} @b; @d = grep {$_ % 3 == 0 and $_ % 5 == 0} (0..99); # 0〜99までの 3と5の…

xrangeはなくなるそうだ

xrangeはrangeに似ているが、rangeがリストを返すのに対してxrangeはxrangeオブジェクト(generatorのようなもの)を返す。 2008年12月4日、Python 3.0がリリースされたそうだが、rangeでgeneratorを返すようになったのでxrangeの必要性がなくなったそうだ。ge…

Appleのカレンダーライブラリの祝祭日を処理する

当初はGoogleCalendarの日本の祝祭日を処理しようと思っていたのだが、Appleが公開しているiCalの方が良いらしい。 必要なライブラリ icalendar dateutil (httpでデータを取得する場合にはurllib2等が必要)iCalendar形式についてはこちらを参照振替休日につ…

マスク画像なしで角丸矩形を作る方法

CSS3で角丸が作れるんだからできるはずということで方法を探してみるとあった。しかもめちゃ簡単。 CoraAnimationを使ってUIViewからデフォルトのCALayerを取りだして角丸にしてしまう。 まずはフレームワークQuartzCoreを有効にしておく。(フレームワークの…

SSH越しでmercurialのリポジトリのクローンを作る

mercurialでSSH越しにmercurialのリポジトリにアクセスする際に使用するsshのURLが使い慣れてたscpと違うので混乱した。 hg clone ssh://username@servername/path/toとすると、servername上のユーザのホームディレクトリ以下である「/home/username/path/to…

fluxboxのメニューのカスタマイズ

fluxboxとは軽量WindowManagerのblackboxの派生WindowManagerで軽量さを引き継ぎつつ、各アプリウィンドウをタブ化してまとめることができるというスゴいやつである。超なつかしす。http://journal.mycom.co.jp/articles/2007/04/12/fluxbox/index.html ただ…

iPhoneでパーフェクトシャッフル

懲りないなw[注意]最初のカードと最後のカードを動かすシャッフル方法なので、52枚を8回で戻すことはできません。前のFlash版もそうね。50枚なら8回で戻るけどw 62枚も64枚も12回でもどる。そっくりなのだが色が違うのがおもしろい。 その他12回で元に戻るも…

find して テキストにフィルタして

最近よく使うようになったのが以下のようなスクリプト for i in `find directoryA -name '*.html'` do dn=`dirname $i` bn=`basename $i` nd=directoryB/${dn#directoryA/} [ -d $nd ] || mkdir -p $nd cat $i | perl -nlpe 'フィルタするperlスクリプト' > …

Sphinxつかっていこうと思う。

pythonのドキュメント生成システムのSphinxがいい感じなので使っていこうと思う。 日本語検索がうまく動かなくて、パッチを作って公開されている人もいるのでhg cloneしてpython setup.py installしてみたけどうまく動かない。conf.pyの指定がまちがってる可…

パーフェクトシャッフルは何回で戻るか

続: パーフェクトシャッフルは何回で元に戻るか - 西尾泰和のはてなダイアリーの件、以前CanvasでやったのをActionScriptでもやってみた。 コードを読みなおすと、自分でもキモいなと思うところがいくつか発見(爆)なので、できるだけ書き直してみた。 packag…

XPathで要素を取得するなど

$url = '[適当なURL]'; $dom = new DOMDocument(); $dom->loadHTMLFile($url); $xpath = new DOMXpath($dom); $links = $xpath->query('//a'); if (is_null($links)) { echo "no links in this page\n"; exit(); } foreach ($links as $link) { echo "linkto…

GAEからim.kayac.comを使ってGmailの新着をPush通知

Gmailの新着がAtomフィードとして提供されていることを知ったので作ってみました。Push通知を受けとるアプリもiTunesStoreで販売されていますが、メールの内容をPush通知させるということは外部のサーバにメールの内容(一部?)を送信しているということになる…