iOS5の、popToViewControllerの挙動がおかしい [iOS5]
iOS5の、popToViewControllerの挙動がおかしい 。
状況:popToViewControllerを呼び出すViewControllerでModalViewControllerを利用。
ModalViewControllerの方からdelegateで、popToViewControllerを呼び出すViewControllerのpopToViewControllerを呼び出す。
popToViewController:すると、
1) popToを呼び出したviewController - viewWillAppear
2) popTo先のViewController -のviewWillAppear
3) popTo先のViewController -のviewDidAppear
4) popToを呼び出したviewController - viewDidppear
で遷移する。
iOS4では、1) と、4)はない。
対処方法:
popToを呼び出す前に、ModalViewControllerをdismissする。
UIWebViewでリンク拾ってるときに、iTunes storeへのリンクに反応してくれない。
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType { }
で、何かしている時に、特定のアプリなどのiTunes Storeへのリンクを押してもスルーされる。
itunesのリンクを押したときは、openURLでsafariを立ち上げるようにしとくくらいしか、解決策が見当たらない。
MonoDevelop 実行エラー [Mac OSX Lion]
MonoDevelopでHellowWorldをビルドして、実行したら速攻でエラーがでた。
対処法は下記の通り。
http://blog.livedoor.jp/satoyansoft/archives/65455066.html
ターミナルで直接
mono xxx.exe
としてやっても動く。
cocos2dでUIScrollView的なものを使いたいとき。
cocos2dでUIScrollView的なものを使いたいとき、
結論としては、
おとなしくそれっぽいLayerを作る。
がおすすめ。いろいろ探したけど、これというのは見つからず。
ので、CCLayerで作ってしまって、好きなようにするのが結局ラクな気が。
- (void)ccTouchMoved:(UITouch *)touch withEvent:(UIEvent *)event { //背景の移動処理、タップしているのか、スライドなのか、ここでフラグ立てておく。 //移動は、[touch previousLocationInView:touch.view];と現在のtouchの差分をとって、差分をspriteのpositionにcppAddするだけ。 } -(void) ccTouchEnded:(UITouch *)touch withEvent:(UIEvent *)event{ //タップのときは、scrollView上にボタン(Sprite)がある場合などは、ここで、touchの座標と、spriteの座標を確認して処理する。 }
最低限、これだけあればいいのでそんなに手間でない。
*cocos2dと、UKit系のViewの混在はwindowにaddすれば可能。rotationがめんどくなったり、フレームレートが半端なく落ちたりするのがネック。
application executable is missing a required architecture
application executable is missing a required architecture iPhone apps should include an armv6 architecture (current ARCHS = "armv7")
これはそのまま、Xcod4.2の
architecture が デフォルト armv7 だけなので、armv6とarmv7にすればOK。
Build Settings -> Architectures
でOthersを押して修正する。
TapJoyのgetTapPointsと、getUpdatedPoints [iOS]
TapJoyで最初に、
[TapjoyConnect requestTapjoyConnect:@"xxxx" secretKey:@"xxx"];
したときにも、getTapPoints が呼ばれる。
したがって、requestのあとに、
[TapjoyConnect getTapPoints];
を呼び出していると、重複する。
request 時にgetTapPointsを呼びたく無い場合は、
-(void)getUpdatedPoints:(NSNotification*)notifyObj
が呼ばれた後に、フラグ等で処理する。AppDelegateのときはとおさないー的な。
[TapjoyConnect requestTapjoyConnect:@"xxxx" secretKey:@"xxx"]; [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(getUpdatedPoints:) name:TJC_TAP_POINTS_RESPONSE_NOTIFICATION object:nil];
ということで、この2つはペアでAppDelegateに入れておく。
getでそのまま、spendする場合は、TJC_SPEND_TAP_POINTS_RESPONSE_NOTIFICATION、も同じタイミングで登録したらいいさ。