タグ

ブックマーク / higelog.brassworks.jp (6)

  • MySQLのデータベース移行 latin1からutf8へ - ひげろぐ

    こないだいくつかのサービスやブログのデータベース移行を行った。 DBMSはおなじみMySQL。 移行と行っても停止して全然問題のないデータベースなので単純にmysqldumpして流し込むだけなのでお手軽簡単。 ただ移行前のMySQLは文字コードが完全バカ設定だったが、移行後のMySQLは真面目状態に設定した状態になっているので、文字コードにちょっと気を遣ってやる必要がある。 移行前のデータ 移行前のMySQLには入っているデータに二つのケースがある。 テーブルの文字コードがlatin1でUTF-8のデータが入っているケース テーブルの文字コードがUTF-8UTF-8のデータが入っているケース 後者の場合は何も考えずダンプしたデータをそのまま流し込めばいいので苦労はないが、前者の場合は次の手順でダンプ内容をちょっと書き換える。 まずダンプする。 そのまま手を加えず取り出すためlatin1で

  • TitaniumのDBの作成と削除とスキーマの更新 - ひげろぐ

    ちょっと整理。 作成する アプリ内で一から構築する方法と既存のDBをインストールする方法がある。 新しく作成する openでDBを開くことができる。 その際にDBが存在しなければ新しく作成される。 var db = Ti.Database.open('userdata'); テーブルの作成はdb.executeを使ってSQLで直接CREATE TABLEする。 既存のDBをインストールする SQLite3のDBをコピーしてデータベースを作成するinstallというメソッドがある。 マスタデータを入れたりするのに便利。 var db = Ti.Database.install('hoge_app_master.sqlite3', 'master'); この時dbはopenで開いたのと同じように操作できる。 すでにDBが存在する場合は上書きはされずopenと同じ挙動になるため、ユーザーデータを

  • Titaniumでナビゲーションバーを使った遷移をする方法二つ - ひげろぐ

    TabGroupを使ったやり方と、NavigationGroupを使ったやり方がある。 TabGroupを使う オーソドックスなやり方。 TabGroupを作成し、Tabを追加。 Tabからウィンドウを開くやり方。 Tabにナビゲーションバーで遷移する機能がついている。遷移の状態はTabごとに保持される。 app.js var win, tab, tg; win = Ti.UI.createWindow({url: "first.js"}); win.hideTabBar(); tab = Ti.UI.createTab({window: win}); tg = Ti.UI.createTabGroup(); tg.addTab(tab); tg.open(); タブバーは必要がなければ隠す。 first.js Ti.UI.currentWindow.title = "Window 1";

  • アプリをレジュームした時に処理を実行する - ひげろぐ

    アプリをレジュームした時に処理を実行する 一度起動したアプリを閉じて、再度開いた時(レジュームした時)にTi.Appのresumeというイベントが発火する。 ちなみに閉じた時にはpauseイベントが呼ばれる。 レジューム時にはWindowのfocusイベントが呼ばれないので困っていたが、これで何とかなりそうだ。 それにしてもドキュメントェ・・・ サンプルコード なにはともあれサンプルコード。 app.js var win = Ti.UI.createWindow(); win.addEventListener("focus", function(){ Ti.API.info("focus!"); }); win.open(); Ti.App.addEventListener("resume", function(e){ Ti.API.info("resume!"); }); Ti.App.

  • Titaniumのモジュール作成にチャレンジ - ひげろぐ

    MapViewのアノテーション表示処理をカスタムしたくてモジュール作りに走ってみた。 参考リソース 日語リソースとしては以下のページがとても参考になる。 [Titanium] Titanium Module Development メモ – その1 – それはBlog [Titanium] Titanium Module Development メモ – その2 – それはBlog チュートリアルとして見るとモジュールの設置やtiapp.xmlの編集が抜けていたりするけれども、全体的にスクリーンショット入りでわかりやすくまとまっていてGJなかんじです。 後は家のPDFを見るべし。 モジュールの作成 モジュールはアプリケーションとは別のプロジェクトとして作成する。 準備 $ alias /Library/Application\ Support/Titanium/mobilesdk/os

    zetfs
    zetfs 2011/12/06
    モジュール
  • TitaniumのロジックとUIのプロパティ定義を分離する - ひげろぐ

    UIの部品をたくさん追加するとコードの見通しが悪くなってくるので、なんとかしたいと思った。 そこでUIのプロパティを指定するオブジェクトを別の場所で定義して分離することにしてみた。 Ti.includeを使うとコードの分離は簡単なので、方法は至って単純。 styles.jsというファイルにプロパティの定義を追い出す。 2010/02/12追記 Titamium Mobile 1.5からJSSというものが使えるようになっていて、以下のstyles.jsでやっていることをCSSっぽく書ける。 ただ1.5の時点ではiOSで問題があり、JSSの更新が二度目以降のビルドに反映されず、更新を確認するためには都度build以下を削除しないといけないようなことになっているようだ。 元のコード まずは分離前。 hoge.js いたって普通に書いたコード。 UI部品が少ないうちは問題ないが、部品が増えてくると

  • 1