====== 雑記 ======
===== dip、sp、pix =====
デザインのサイズ指定に使われるのが dip(dpも可)。
画面サイズ(解像度)に応じて表示する大きさが変わるので、どの解像度で見てもデザイン(イメージ)が崩れにくい。
フォントのサイズ指定に使われるのが sp。
dip同様、画面サイズとの比率でサイズ調整。
従来からあるpix。
固定サイズ指定になるので、画面サイズによる表示の違いを吸収できない。
非推奨。
===== デザイン周り =====
Android GUI PSD Vector Kit
http://www.smashingmagazine.com/2009/08/18/android-gui-psd-vector-kit/
デザインサンプル
http://www.androidpatterns.com/
===== rawQueryでバインド変数が使えない =====
~以下、2011年6月時点の話~
ドキュメントなどに従った記述であれば、バインド変数が使える。
ただし、実際にしてみると、記述によって以下のエラーが発生する
ERROR/AndroidRuntime(343): Caused by: android.database.sqlite.SQLiteException: bind or column index out of range: handle 0x23aa00
どうも、ミドルウェアのバグらしい・・・
http://code.google.com/p/android/issues/detail?id=3153
==== like に % がついているとNG ====
String data = intent.getStringExtra("keyword");
String TABLE_NAME = "MyTable";
String query = "SELECT * FROM " + TABLE_NAME + " WHERE Name like '%?%'";
Cursor cursor = db.rawQuery(query, new String[]{data});
==== like に % がついていないとOK ====
String data = intent.getStringExtra("keyword");
String TABLE_NAME = "MyTable";
String query = "SELECT * FROM " + TABLE_NAME + " WHERE Name like ?";
Cursor cursor = db.rawQuery(query, new String[]{data});
==== 事前にバインド変数に%をつけるとOK ====
String data = intent.getStringExtra("keyword");
data = "%" + data + "%";
String TABLE_NAME = "MyTable";
String query = "SELECT * FROM " + TABLE_NAME + " WHERE Name like ?";
Cursor cursor = db.rawQuery(query, new String[]{data});
==== バインド変数を使わなければ当然OK ====
String data = intent.getStringExtra("keyword");
String TABLE_NAME = "MyTable";
String query = "SELECT * FROM " + TABLE_NAME + " WHERE Name like '%" + data + "%'";
Cursor cursor = db.rawQuery(query, null);