X-BASIC for iOSで使っている主な技術
iOSアプリ第7弾、実開発7ヶ月(1日18時間*無休 T_T;;)。
- BASIC処理系
- drawInRectを使わない画面描画
- バックグラウンド画面作成
- 多画面同時描画
- 画面合成
- CGContextSetLineWidth()を考慮したCGContextSetLineDash()相当の実装
- アプリケーション内フォント
- UITextView内検索
- UIWebView内検索
- UITextView表示高さ取得
- UIViewをIBで作る
- AVFoundation(AVAudioPlayer)
- UTF16/UTF8/SHIFT-JIS
- スクロール制御
- key-value監視
- タッチ&リピート
- HTML5(ちょっとだけ)
- ウォッチドッグタイマー回避
- クラスインスタンスのメモリ確保問題回避
- マルチスレッド処理
- ARM(実機)におけるメモリ境界問題回避
- モーション
- iPod&iPhone5画面対応
- iTunes経由のファイル共有
- 方位取得
- Zipアーカイブ処理(MacOSXの変なZip仕様にも対応)
- オリジナルUTI定義
- 他のアプリケーションからのファイルインポート
- アルファチャンネルを用いたツールバーアイコンの作成
- ViewController(相当)の連続表示時タイミング調整
- 静止画像のアルバムへのコピー
- ビットマップ確保とUIImage化(Retina対応)
- メインスレッドからしか実行出来ないメソッドのサブスレッドからの実行要求
- 画面描画の高速化
- X68000:ADPCM→PCM変換
- X68000:PIC,MAG展開
- 多重カテゴリ
- 直線/円/楕円/ペイント
- Xcode4.6コンパイラバグ回避(memcpy)
- AirPrintによる画像及びテキストの印刷
- ソフトウエアスプライト処理
- CGContext*()/CGBitmapContext*()/ビットマップ内描画
- UIImageのビットマップ化
- 画面スクロール
- layerによる座標変換
- layerアニメーション
- UIViewアニメーション
- iOS7/8/9対応
- 64ビット環境対応
- iPhone6/Plus対応
- サロゲートペア文字対応
- 音楽機能(MML)
- 他多数(覚えてないほど)
(順不同)
|
|
アップルとのNDA契約により、細かい情報については開示できません。
あしからず、ご了承ください。
謝辞
以下の素材やライブラリを使わせていただきました。ライセンスについては各サイト参照のこと。
(今もあるかは未確認)