• 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
 

iPhone キーボードの大きさの最大値は

// Portrait 320.000000,216.000000 // Landscape 480.000000,162.000000

これを超して作ったものを inputView にセットしても、このエリアからはみ出す部分はタップが来ない。

これより小さく作った場合、UIViewAutoresizingFlexibleHeight がセットされていると、この大きさに高さがリサイズされる。

幅は常にリサイズされる。

どうしても大きいのを作りたかったら、inputView と inputAccessoryView の両方を使う。

posted by Face Saturn on Thu 28 Oct 2010 at 07:29

一般に nib で指定したアウトレットは initWithCode が呼ばれたタイミングではまだつながれておらず awakeFromNib が呼ばれたタイミングではつながれている。

UIViewController の注意事項 Nib A で指定された UIViewController (以下vc)が Nib B からview を読むようになっているとき、vc の view は awakeFromNib でもつながれていない。(NIb A で指定していないから当然なのだが。)view プロパティに読み込みアクセスするときに Nib B からのロードが行われ、その時点で view はつながれ、その後、viewDidLoad が呼ばれる。

表示しなくても view プロパティにさえアクセスしてやればロードされる。 self.view; の1文でロードされる。どのタイミングでロードされるかはデバッガで _view を見る。ダンプしようとするとロードされてしまう。

posted by Face Saturn on Thu 28 Oct 2010 at 01:17

application does not run in background を info.plist で指定すると UIApplicationExitsOnSuspend がセットされる

posted by Face Saturn on Wed 27 Oct 2010 at 09:17

Important: iOS ignores this cache policy, and instead treats it as NSURLCacheStorageAllowedInMemoryOnly.

Disk にキャッシュする機能は iPhone では 提供されていない。自前でなんとかしなくちゃいけないらしい。

キャッシュのキャパシティを設定しておかないと willCacheResponse は呼ばれない。

キャッシュのキャパシティの設定: [ [ NSURLCache sharedURLCache ] setMemoryCapacity:100000 ];

posted by Face Saturn on Wed 27 Oct 2010 at 02:13

UIScrollView で zoomScale を設定すると flashScrollIndicators が無効になる? flashScrollIndicators → zoomScale の順でやること。

posted by Face Saturn on Sat 23 Oct 2010 at 12:40

どれかを指定するとビューの大きさを変更できなくなる。

posted by Face Saturn on Thu 14 Oct 2010 at 08:24

Object は IBOutlet につないだだけで、retain される。

2011/4/18 再調査

以下のコードでは retain される。

   1  @interface ViewController : UIViewController {
   2  	IBOutlet	id	o;
   3  }
   4  @end
   5  

以下のコードでも retain される。

   1  @interface ViewController : UIViewController {
   2  }
   3  @property	(nonatomic, retain)	IBOutlet	id	o;
   4  

以下のコードでは retain されない。

   1  @interface ViewController : UIViewController {
   2  }
   3  @property	(nonatomic, assign)	IBOutlet	id	o;
   4  

posted by Face Saturn on Thu 14 Oct 2010 at 08:17

モーダルで出ている VC の self.parentViewController は自分を presentModalViewController:animated で出した VC が入っているとは限らない。ヒエラルキーのルートは Window 直下の VC になる。

posted by Face Saturn on Tue 12 Oct 2010 at 02:30

UIScrollView に入れられた ContentView の frame は自動的に UIScrollView の大きさ分増える。 例えば IB で View の大きさを 1000x1000 にして、UIScrollView を一杯で使うとするとナビゲーションバーとタブコントロールありの場合、1320x1367 になる。(横だと1480x1219)

IB で UIScrollView の大きさを大きく指定しておいて、Nibのロード時に縮小されると、そこにタッチイベントが行かなくなるので、UIScrollView は実際に使う大きさ以下に設定するのがよさげ。

posted by Face Saturn on Thu 7 Oct 2010 at 01:09
5th Tue

Code Sign error

iPhone : XCode 3.2.4

Provisioning profile 'XX...XX' can't be found SCM からプロジェクトを持ってきて Device 用にビルドする時に、そのプロジェクトで使っていた Provisioning profile が無いと、このメッセージが出る。

対処方法は

  • Provisioning profile を持ってくる。
  • project.pbxproj を編集して "PROVISIONING_PROFILE[sdk=iphoneos*]" = "XX...XX"; の行を消す

もっと良い手を知りたい今日このごろ。

ちなみに自分が持っているオーガナイザで見れる Provisioning profile は、 ~/Library/MobileDevice/Provisioning Profiles 以下にある。

2010/10/12 加筆

ビルドの設定の コード署名 ID -> Any iOS Device で、一旦 Don't code sign に設定してやれば、"PROVISIONING_PROFILE[sdk=iphoneos*]" = "XX...XX"; の行は消える。そういえばあたりまえのことだった。

posted by Face Saturn on Tue 5 Oct 2010 at 08:44
Contents
iPhone キーボードの大きさの最大値
Nib を読んで生成されるオブジェクトのアウトレット
UIApplicationExitsOnSuspend
NSURLCacheStoragePolicy/NSURLCacheStorageAllowed
zoomScaleとflashScrollIndicators
Simulated User Interface Elements
IBOutlet
self.parentViewController
UIScrollView と ContentView
Code Sign error
Services from s21g
twpro(ツイプロ)
Twitterプロフィールを快適検索
地価2009
土地の値段を調べてみよう
MyRestaurant
自分だけのレストラン手帳
Formula
ブログに数式を埋め込める数式コミュニティ