[SDK]iPhoneアプリ開発初心者質問箱24[touch][iPad]at MAC
[SDK]iPhoneアプリ開発初心者質問箱24[touch][iPad] - 暇つぶし2ch535:名称未設定
12/04/12 04:24:59.17 iu93l6hX0
UIView上のイメージとイメージで衝突判定をつけたいと思ってるんですが
検索するとCocos2dというのを使って当たり判定の説明をしているサイトがいくつも見つかります。
初心者なのでよくわからないのですが、このCocos2dのフレームワーク?を導入しないと
衝突判定はできないんでしょうか?

536:名称未設定
12/04/12 04:32:29.32 XcUU5/DZ0
>>535
衝突判定を何のためにやるかにもよるけど、ゲーム作りたいなら Cocos2d が有名だね。
もちろん、単純に衝突判定したいだけなら他にいくらでも方法なあるけど。

537:名称未設定
12/04/12 05:35:26.01 ldAy/mo+0
>>535
Cocos2dはopenGLだからな。
UIViewならこれが簡単だよ。

CGRectContainsPoint(rect, point);

rectにviewのframe、pointに相手のviewのcenterとか。

538:535
12/04/12 06:01:44.26 iu93l6hX0
>>536,537
ありがとうございます!おかげさまで出来ました!

539:名称未設定
12/04/12 06:37:06.44 1LA5xNjqP
>>532

>>531です
addSubViewはしているのですが
ナビゲーションバーには何もしていないので
nilが入ってしまっているかと思います。

現在のソースになります。
URLリンク(www.dotup.org)

質問ばかりで申し訳ございません。

540:名称未設定
12/04/12 07:11:18.39 E/6qXexi0
UITableViewにNUMutableArrayを追加したMyTableViewクラスを作り、StoryBoardで配置したのですが
MyTableViewクラスでオーバーロードしたinitを呼んでくれないらしく、NSMutableArrayにアクセスしようとしてエラーになります。
手動でViewControllerのviewDidLoadでalloc initすると上手く動きます。しかしこれではStoryBoardで配置する意味が無いように思います。
StoryBoardで自作クラスを配置した場合にも自作クラスでオーバーロードしたinitを呼ばせるにはどうすれば良いのでしょうか?

541:名称未設定
12/04/12 07:44:56.24 k1j+eF4C0
>>540
UIView initWithFrame: より
If you use Interface Builder to design your interface, this method is not called when your view objects are subsequently loaded from the nib file.
Objects in a nib file are reconstituted and then initialized using their initWithCoder: method, which modifies the attributes of the view to match the attributes stored in the nib file.
For detailed information about how views are loaded from a nib file, see Resource Programming Guide.

もちろん、init もね。awakeFromNib が俺は好き


542:名称未設定
12/04/12 08:49:26.15 k1j+eF4C0
>>540,541
NSObject UIKit Additions awakeFromNib より
During the instantiation process, each object in the archive is unarchived and then initialized with the method befitting its type.
Objects that conform to the NSCoding protocol (including all subclasses of UIView and UIViewController) are initialized using their initWithCoder: method.
All objects that do not conform to the NSCoding protocol are initialized using their init method.

リソースからの読み込みで init が呼ばれるのは、対象のクラスが NSCoding に準拠していない場合のみ

543:512
12/04/12 08:52:00.73 Tq/Lz41A0
>>513,514
レスありがとうございます。
折角、日付ピッカーが下から出て来る方法を教えて頂いたのですが、
最初から日付ピッカーが表示されていて日付フィールドがない画面(「時計」アプリの
「アラーム」設定画面のような)に変更しようと思います。
<質問>
下記の例で"アイテム1の詳細表示の時だけ"日付ピッカーを表示するとした場合
日付ピッカーの表示処理は、どこで行えば良いのでしょうか?

TableView1(アイテムのリスト表示)
 アイテム1
 アイテム2
 アイテム3
TableView2(特定のアイテムのフィールドをグループ形式で詳細表示)
 アイテム1のフィールド1
 アイテム1のフィールド2
 画面下端(テーブル外)に日付ピッカー表示





544:名称未設定
12/04/12 09:09:11.94 li3/JYFv0
>>543
まずは「時計」アプリの「アラーム」設定画面のようなアプリを作ってみればいいじゃん。

そうすれば答えは出る。

545:名称未設定
12/04/12 13:06:46.92 lN/pHeFNP
>>534 533です。animatedのフラグがNOになってました、ありがとうございました。

別件で質問です。UIViewのサブクラスに-(void) drawRect:(CGRect)rectをオーバライドし、
UIImage のオブジェクトを
[image drawInRect:CGRectMake(5,5,58,58)];
という感じで描画しています。この画像に角丸をつけたいのですが、やり方がよく解りません。
UIImageViewですとlayer.cornerRadius = 5.0; とかできるのですが…
ググってみるとCoreGraphicsでもっていじったるすると推測してますが、何かヒントになるサンプルなどないでしょうか。
よろしくお願いします。

546:名称未設定
12/04/12 13:30:22.22 li3/JYFv0
CGPathで角まるの四角を描いて
CGContextClipでクリップ
そのあと画像を描画するとか
実際出来るかわかんないけど

547:名称未設定
12/04/12 13:37:20.99 ZTpFOyKzP
UIBezierPath使うと楽かも
CG使わんでもUIBezierPathとUIImageでいけるんじゃないかな
実際出来るかわかんないけど

548:名称未設定
12/04/12 13:57:32.83 lN/pHeFNP
>>546-547
ありがとうございます。ググりまくっていたら、
URLリンク(eureka.ykyuen.info)
をみつけました。組み込んでみると、一応、期待通りの動きはしてくれてますが、
<Error>: CGContextBeginPath: invalid context 0x0
<Error>: CGContextAddRect: invalid context 0x0
<Error>: CGContextClosePath: invalid context 0x0
...こんな感じなエラーを出してくれてますね…


549:名称未設定
12/04/12 14:25:53.68 lN/pHeFNP
連投すんませんです
URLリンク(blog.sallarp.com)
ここのサンプルでとりあえずウマくいきました。結果オーライで何ですが orz

550:名称未設定
12/04/12 16:26:37.90 wFIN6MVg0
Xcode4.3.2ですが、エラーでクラッシュした場所に止まりません。
何か変わったんでしょうか?

551:名称未設定
12/04/12 18:18:30.39 Y1hGO6Pt0
xcode organizerでitunes connectにloginできない

552:名称未設定
12/04/12 18:43:44.06 fEAFImco0
現在、AVFoundationPGを読んで動画の編集について勉強しています。

その中で、動画のトリミングの仕方や複数動画の連続再生は理解できたのですが、
複数の動画を一つにつなげて出力する方法は発見できませんでした。

どなたか、動画のトリミングとつなぎ合わせについて詳しい書籍やWebサイトを
ご存知の方はいらっしゃいませんか?
いらっしゃいましたら教えていただけると助かります。

553:543
12/04/12 19:44:40.64 Tq/Lz41A0
>>544
レスありがとうございます。
自己解決しました(viewDidLoadでsectionを判定して表示)。

554:551
12/04/12 19:55:08.32 Y1hGO6Pt0
4.3.1->4.3.2とjavaを最新にしたらできた (」・ω・)」

555:名称未設定
12/04/12 20:42:25.80 ISYCeF7o0
TabViewControllerにデータを表示することができなくて四苦八苦しています。
ビルドはできるのですが、アプリ起動時に落ちてしまいます。
アプリケーションデリゲートからRootViewControllerへのDataControllerのオブジェクトの受け渡しがうまくいってないようです。

 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
UINavigationController *navigationController = (UINavigationController *)self.window.rootViewController;
RootViewController *firstViewController = (RootViewController *)[[navigationController viewControllers]objectAtIndex:0];

DataController *controller = [[DataController alloc] init];
firstViewController.dataController = controller;
// Override point for customization after application launch.
return YES;
}

TableViewConntrollerだと上記のコードでうまく行くのですが、TabViewControllerだとだめです。
どうすればいいのでしょうか?


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch