日付をキーにした辞書の最初と最後を拾うのにちょっと詰まったのでメモ。Python 3ではkeysメソッドが返すのはリストじゃなくてビューに変わるけど、sorted関数にすぐ渡しているので3でもそのまま動く。ちなみにiterkeyメソッドは廃止なので積極的に使わない方が良い。
Archive for 2012/11
iOS 6におけるSleipnizerフルスクリーン機能
■Portraitモードにおけるoverlayボタン
v3.1からPortraitモードでもOS標準のoverlayボタンが表示されるように変更します。下記の表はそれを踏まえての遷移表です。
■Sleipnizerフルスクリーン遷移表
Sleipnizer (>= 3.1)のフルスクリーン管理が非常に複雑になってきましたので、まとめておきます。左の状態からアクション後の状態が右側です。on/offの状態はoverlayボタンが出なくて不便なだけなのでならないように作ってます。
Sleipnizer | iOS 6 native | action | Sleipnizer | iOS 6 native |
off | off | tweak | on | on |
native | off (on : Relate to native) | |||
off | on | tweak (Portrait) | on | on |
tweak (Landscape) | off | off | ||
native (Landscape) | ||||
on | on | tweak | off | off |
native |
■Relate to native
Relate to nativeを有効にすると上記の表で1箇所だけ動作が変わります。また、iOS6からのiOS標準のフルスクリーン状態は/var/mobile/Library/Preferences/com.apple.mobilesafari.plistに保存され、Safariの起動時(Suspendから復帰ではない)にplist設定値から状態が復元されるのですが、この際にフルスクリーンがONで保存されていると起動時からフルスクリーンになります。Startup FullScreenが半分入る感じですね。
■Keep statusbar
諸々の整合性からiOS6+ですとKeep statusbarが有効なのはPortraitモードのみになりました。FullScreen for Safariは完全になくしてしまったみたいですが。
■iPad
iPadは標準が入ってこなかったようなので、これまで通りに使えるはずです。はず。
libinstabanner
libinstabannerをリリースしました。iOS5から実装されたUIAlertViewによる通知にかわる方法として上部にバナーがでるおなじみのアレですが、tweakから任意に呼び出すには結構な手間がかかる(特にSpringBoardの外からは)のでライブラリを作りました。
使い方は1通りしかないので難しい事は何もなく、ヘッダーのUsageがもうほんとすべてです。bundleIdentifierの引数はnilチェックしてるのでそこは最低限なにか入れる必要があります。titleはnilにすると自動でDisplayNameが入ります。com.apple.Preferencesを指定して日本語なら「設定」てな感じです。
bundleIdentifierを自由に指定できるのでこんな感じにすると・・
[InstaBanner showBannerWithBundleIdentifier:@"eu.heinelt.ifile" title:nil message:@"libinstabanner test"];こうなります。タップするとそのアプリを起動できます。
面倒なコードが1行ですむね!やったね!
CleanActivity
iOS 6からUIActivityViewControllerを使用したメニュー導入されました。従来使われていたUIActionSheetより生成にパワーが必要でUIActionSheetよりも起動は遅いですが、表示できるメニュー数が多くて便利ですね。便利なんですが人によっては絶対に使わないようなメニューもあるかと思います。Weiboとか、メールとか、メッセージとか。そこでOS標準提供のActivityをオン・オフ設定できるCleanActivityを作りました。これで私のBylineは2段にまとまってスッキリ!
設定できるのは標準提供されている以下9種類のActivityです。
色々とオフにするとスッキリしたメニューにできます。
CleanActivityはgithubで公開しています。Licensed under the GPL v3です。アイコンのほうきがGPLだったので。CleanStatusのほうきと同じ画像だと思うのですがアレはちゃんとGPL守ってるのでしょうか。