Titanium
QuickTiGame2dは、Titaniumで使える2Dゲーム開発モジュール。 もともとゲームづくりには向いていないと言われていたTitaniumの弱点を補う役割を果たしていた。emo-frameworkやるかと思ってググったらQuickTiGame2dがひっかかったから面白そう! サンプルコー…
調査のみ。 調査目的 表示済みのWebViewに、独自のイベントを設定したい。 その方法の調査。 調査結果 WebViewをただ表示した状態からは新たなイベントの設定ができない。 addEventListenerを設定すると、デフォルトのイベント(ピンチイン・ピンチアウト等…
前回作ったものを改良した。 やったこと 記事のタイトル、ブログ名、記事冒頭部分、日付を表示していたのを、記事のタイトルとブログ名だけを表示させるようにする。 以前までの3件の倍、6件の表示が可能になった。 前回 -> 今回 -> ソース(前回からの主…
完成図。 機能 ・コーディング時に指定しておいたRSSフィードを解析して表示 ・デフォルトでは画面の高さ分しか取得&表示しない ・「続きを読む」をタップしたタイミングで続きを読み込む ・セルをタップするとナビゲーションバーつきのWebページを表示 ・W…
TitaniumのIDEであるTitaniumStudioに強力なコード補完機能があるので便利だという話。 元ネタ:【Titanium Advent Calendar 2011:八日目】タイタにうもん第1話 - JP::HSJ::Junknews::HatenaSideつい先日はじめて知って感動した。 強力なコード補完 UIのパ…
Xcodeでさんざん苦しめられて結局まだ解決していないTableViewに、Titaniumで向き合うときがきた。初期状態でリストを表示する。 セルをタッチするとナビゲーションバーつきの詳細ページへ移動する。 ポイント ・リストの項目はひとつずつ設定する ・ナビゲ…
タブを作る。 ポイント ・タブグループを直接openすることで開く。windowにaddする必要はない。 ・AndroidではsetBadgeメソッドは利用不可 参考:まったりlog残し - ドットインストールの「Titanium Mobileの基礎」をAndroidで写経してみた 手順 http://doti…
アプリ内でDBの操作を行う。 手順 http://dotinstall.com/lessons/basic_titanium/1921 ポイント ・DB:sqlite ソース app.js // sqliteというDBを使う var db = Ti.Database.open('mydb'); // テーブルの作成 db.execute('create table if not exists users…
アプリ内でファイル操作を行う。 下記ではファイル操作をした結果をコンソールに出力している。 手順 <iPhoneシミュレータの場合> http://dotinstall.com/lessons/basic_titanium/1920<Andoridエミュレータの場合> まったりlog残し - ドットインストール…
テキストフォームに文字を入力してSubmitボタンを押すと、入力した文字列をResultラベルに表示する。 ポイント ・Ti.UI.createTextFieldを使う ・getValueで値を取得する ・DBに書き込んだりファイルに書き込んだりするために用いたりする ・AndroidではgetV…
設定した場所にピンを打った地図を表示する。 ピンをタップすると設定した名前を表示する。 ポイント ・Ti.Map.createAnnotationでピンを作成できる。 ・ピンの作成 -> 地図作成時にピンを設定 という流れ。 ソース(抜粋) app.js // ピンの作成 var ebisu …
MapViewを使って地図を表示させる。 ポイント ・Ti.Map.createViewを使う 手順 http://dotinstall.com/lessons/basic_titanium/1916# ソース app.js var win = Ti.UI.createWindow({ backgroundColor: 'blue' }); var view = Ti.UI.createView(); var map = …
暫定解決したので対策方法&調査メモ。 現象 先日書いたように、Xcodeをアップデート(4.4.1 -> 4.5)した直後から、TitanimStudioでIPhoneシミュレータを使った動作確認・デバッグができなくなった。 (シミュレータが起動直後に勝手に終了してしまい、アプリ…
画像を表示させる。 ポイント ・Ti.UI.CreateImageView()を使う ・画像をプロジェクトに追加するにはドラッグ&ドロップでOK ・画像表示オプションにwidthだけ指定すればアスペクト比を自動的に調整してくれる ・URLも指定可能 手順 http://dotinstall.com/l…
方法 App Exploreの下記場所を押す。 起動時に設定したWorkspaceにあるプロジェクト一覧が表示される。 選べば即座に切り替えることができる。 Xcodeとの違い Xcodeで任意の別プロジェクトを開くときは、File -> Openから.xcodeprojファイルを選択すればよい…
あらかじめ指定したWebページを表示する。 ポイント ・Ti.UI.createWebViewを使う。 ・基本となるViewの代わりとしてWebViewを使うこともできる 手順 http://dotinstall.com/lessons/basic_titanium/1915 ソース app.js <ViewにWebViewを追加する方法> var…
Titanium mobileはクロスプラットフォーム開発環境なので、ひとつコードを書けばiOSでもAndroidでも動くアプリが作れる。しかし、ネイティブアプリに読み替えてビルドするため、もともとネイティブ開発でも存在しない処理は行えない。 例)Androidでは、クル…
ボタンを押すと別画面に切り替える。 またボタンを押すと元の画面に戻る。 ↓ ↑ 手順 http://dotinstall.com/lessons/basic_titanium/1912 ポイント ・新しい画面を開くときは、新しく開くwindowをopen() ・元の画面に戻るときは、すでに開いているwindowをcl…
ボタンを押すと、複数選択肢を持つアラートダイアログを表示する。<ボタン押下前> <ボタン押下後> どれを選んだかを配列のindexで取得することができる。 indexを利用してどれを押下したかを取得して処理分岐させるのに使う。どれを押したかを取得し、コ…
デバッグログやバックグラウンドのデータなどをコンソールに出力する方法の勉強。 JavaScriptのconsole.log()と同様のもの。 手順 http://dotinstall.com/lessons/basic_titanium/1909 ポイント 動作の趣旨はJavaScriptのconsole.log()と同様だが、使うため…
ボタンを設置する。 ボタンを押下すると、アラートメッセージを表示する。 ポイント ・何かをされたとき、というようなアクションの定義には、JavaScriptでおなじみのaddEventListenerが使える。 ・ボタンの作成、アクションの記述をしたあとは、viewにaddす…
環境構築に手間取ったが、HelloWorldのプロジェクト作成作業自体はすんなりいった。 作業前の確認ポイント サンプルコード(Kitchen Sink)の動作確認にはGitのインストールが必要 Xcodeをインストール済みであれば、iPhoneシミュレータが自動的に認識され、…
Titanium mobileの開発をするには、Titanium StudioというIDEを使う。 Appceleratorが公式サイト。で、インストールしてドットインストールの動画見ながら勉強しようと思ったら、 http://dotinstall.com/lessons/basic_titanium/1903 で触れられているKitche…
0から始めるTitanium Mobile 第1回 Windows開発環境(Android) の構築 – Roguer に従って行う。
参考になったのは下記。「Titanium - JavaScript で iPhone/Android アプリを作る」 http://d.hatena.ne.jp/naoya/?of=15いわずとしれたid:naoyaさんの記事。簡単なサンプルと、環境、開発手順の概要がサッとわかる。 あとは下記も役立ちそう。「忙しい人の…
Titanium mobileとは 「初心者でも2週間でiPhoneアプリが作れちゃうTitanium Mobileがすごい件」 http://www.infiniteloop.co.jp/blog/2011/04/titanium_mobile/が概要を理解するのに役立った。#いわゆるギークの方のブログは、どうしても記事の書き方に経…
なぜここにきてenchant.jsから離れるのか enchant.jsは、少し勉強した結果、往年の簡単なFlashゲームを作れるイメージになった。その結果、enchant.jsへの認識は、 「もちろん、やろうと思えばFlashゲーム以上のことができるが、そうなると結局ハードルが高…