Sencha Touch 2.1の変更点まとめ
本記事は、Sencha Advent Calendar 2012 の3日目の記事です。Sencha Advent Calendar ですが、今のところ参加者がとても少ないです。。どんなネタでも大歓迎ですので、ご参加お待ちしています!
先月、11月6日に Sencha Touch 2.1 がリリースされました。ざっくりと以下のような点が追加・改善されたようです。
- パフォーマンスの改善
- ネストしたレイアウトでのパフォーマンス改善
- paintedイベントへの変更
- TaskQueueメカニズムの追加
- Chart の機能改善
- Drawパッケージの改善
- 拡張可能なスプライト
- 修飾子と属性の定義
- フライウェイト・インスタンス化・スプライト
- Retinaディスプレイサポート
- Chartパッケージに新しいチャートを追加
- 集合チャート
- 金融チャート
- Drawパッケージの改善
- コンポーネントの強化
- 無限スクロール付きリスト
- 新しいSencha Cmd
- 強化されたネイティブサポート
詳しくは以下をみてください。
ところが、2.1で新しくなったのはこれだけではありません。というか、全然もっとある!!ということで Release Notesから、個人的に興味あるものをピックアップして紹介したいと思います。
チャート系
- Implemented SVG support for Draw
- SVG is now forced on Android 4.1 devices due to Canvas issues
- Added webkitBackingStorePixelRatio support
- CanvasのRetina対応
チャート系のアップデートに伴い、draw系パッケージも各種強化されました。詳細は割愛。詳しくはRelease Notesみて下さい。Android 4.1 ではCanvasの問題から強制的にSVGになるようです。
dataパッケージ系
- [TOUCH-2792] Implemented filters, sorters and paging into WebStorage proxy
- [TOUCH-2844] Optimized clear method on WebStorage Proxy
WebStorageでもフィルタ、ストア、クリアができるようになった!
- [TOUCH-2800] Implemented new WebSQL proxy
- [TOUCH-3551] Added filtering and sorting capabilities to the SQL proxy
ようやくWebSQLプロキシが実装されました!!フィルタとソートも追加。
Sencha Command 関連
- in-app purchases API for iOS
- Contacts APIs for iOS and Android
- Push notifications for iOS
- openURL support
アプリ内課金、連絡先API、プッシュ通知などにも対応!
パフォーマンス
- SizeMonitor refactored for improved performance
- Improved Android 4 Scroll Indicator performance
- Update Button SASS so it looks better on device
- Change ListItems to not use vertical docking for headers. This improves performance since there is less DOM and less box layouts
スクロールや回転、リストのパフォーマンスアップ。ボタンデザインの修正。
- [TOUCH-3497] Added support for iPhone 5 resolution startup screen
解像度が変わりましたからねー。
その他
- [TOUCH-2888] Changed the default zIndex in message box to a larger number to stop accidental zIndex issues when creating other floating panels/components
- 1.xの頃からあるバグで昔私も報告したなー。ようやく直ったようで。
- [TOUCH-3042] Allow hideOnMaskTap to be changed dynamically
- これは地味に欲しい機能。
- [TOUCH-3031] Allow JS files to be specified as remote
- JSの部分遅延ロードができるのかな?
- Ext.browser, Ext.feature, Ext.os が追加
- 機能判別やブラウザ、OS判定が便利になった!
- POST calls will now honor the disableCache option
- 例の iOS6 のPOSTキャッシュのバグ回避?
- Added proper support for IE10 animateStartTime
- IE10サポートも進んでいるようです。
総括
Release notesからざっくりと拾い出してみました。実はまだドキュメントに載っていない新機能が色々とありました。ソースを見ると入っているのですが、ドキュメント化が間に合ってないみたい。2.1 になって、細かい使い勝手などが結構改善されています。2.0 → 2.1 への乗り換えはそんなにコスト掛からないと思うので、是非検討されるとよいんじゃないでしょうか?
あと、たまにRelase notesを見ると思わぬ情報があったりしておもしろいですねー。ちゃんとドキュメント読みましょう、ということですね。
さて、Sencha Advent Calendar 明日は、また @kawanoshinobu さんです!その次が未定なので、ぜひ誰かJOINしてください!(切実