iPhone Tweak プログラミング? ホーム画面でのアイコンの場所についての判定方法
自分用めも見たいなもの?
世界のてつおさんが、作ってらっしゃるすばらしいTweak、「LabelUp」に触発されていろいろいじった時に調べた事。
iPhoneの ホーム画面でアイコンがDockにあるか、スイッチャーにあるか、フォルダーにあるかで、ラベルの位置を変えたい場合の判定について。
アイコンラベルはSBIconLabelImageViewってやつですが、アイコン本体はSBIconViewになります。
で、どこにあるかの判定方法ですが、まずDock内かどうかは、SBIconViewの- (BOOL)isInDockで判定出来ますね。
あとの判定はどうやるか?
SBIconViewに- (int)location ってのがあります。
これの値で判定すれば良い様ですが、それぞれの値についてググってみると、r_plus先生のこのソースに記述が見つかりました。
// location 0 == HomeScreen, 1 == Dock, 2 == AppSwitcher.
この値を参照すれば、Dock内かどうかも、まとめてわかる様です\(^o^)/ヤッター!。
あとひとつ、知りたいことがありました。
アイコンがフォルダー内にあるかどうかの判定ですね。
ググってもなかなか良い情報がありません\(^o^)/
仕方が無いので、自分で力技でしらべてみました。
( ̄^ ̄;)ウーン
.....................
.....................
どうやら、SBIconViewの入っているview(superview)がSBFolderで始まる名前の場合、フォルダー内にあると判断しても良さそうです。
ばんじゃーい ゙∩(〃・ω・〃)∩゙ ばんじゃーい
******************************************
[訂正]
フォルダー内かどうかの判定だけど、フォルダー開いてるときしか、判定出来なかった(T-T)
フォルダ開いてない時はsuperviewがnilになってて判断出来ないじゃまいか。
仕方が無いので、SBIconListViewからレイアウト変更する時(layoutIconsNow)に
フォルダーかどうか判断すれば良いみたい。
あとよくわからないのがあって、SBFolderSlidingViewって奴なんだけど、現在調査ちう。
******************************************
これでラベルの配置が自由自在だね( ꒪⌓꒪)
Σ\( ̄ー ̄;)ナンデヤネン on Twitter: "@pizzapaedo こんな感じだよ(^ ^) http://t.co/k15eaL4KDR"