2011年11月20日日曜日

2011年11月10日木曜日

【ウィジェット】定期更新まとめ



メモレベルでまとめ。


これでいけるか・・・


・AlarmManagerを使用する。


・電源ON時のイベントはWidgetのプロバイダーで拾う(Manifestでフィルター書く)


・その他の画面回転などManifestに書いても見てくれないイベントは、プログラムで直接書く。


・Widgetプロバイダーでは、レシーバー登録できないので、専用のサービスを用意する。


・通信処理は随時IntentServiceでさくっと。





※Widgetプロバイダーはイベントのたびにnewされてるもよう??





ListViewの表示位置



表示位置の指定はListView.setSelection()メソッド。。。





2011年9月2日金曜日

iBatisでプロパティ。。。



すごい久しぶりに書く。


iBatisのSQLで環境違いのプロパティを使いたい。


・SqlMapConfigで



<properties resource="resource.properties"/>


・各SQLで



SELECT XXX FROM ${sys.shema.name}.XX_TABLE


datasourceできれいに書けるときは、こんな必要ないのだけども。。。


今後はあんま用途なさそう。


何かいい案ないかと相談あったが、


普通にマニュアルに書いてあったひょう。





2011年7月21日木曜日

プログラムで独自の図形を描く

独自ビューを用意して、三角形を描く


@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
    int height = getContext().getResources().getDimensionPixelSize(
                     R.dimen.change_list_mark_height);
    int width = getContext().getResources().getDimensionPixelSize(
                    R.dimen.change_list_mark_width);
    setMeasuredDimension(width, height);

}
@Override
protected void onDraw(Canvas canvas) {
    canvas.drawColor(Color.TRANSPARENT);
    Paint paint = new Paint();
    paint.setAntiAlias(true);
    // 三角形を描く
    paint.setColor(Color.RED);
    paint.setStyle(Paint.Style.FILL_AND_STROKE);
    Path path = new Path();
    path.moveTo(getWidth(), 0);
    path.lineTo(getWidth(), getHeight());
    path.lineTo(0, 0);
    path.lineTo(getWidth(), 0);
    canvas.drawPath(path, paint);
}

2011年7月11日月曜日

バインド変数で DATE型データを扱う







    • バインド変数の宣言



var vardate char(64)






    • 値の代入



execute :vardate := to_date('2011/05/12 00:00','yyyy/mm/dd hh24:mi');






    • 参照の実行



select * from hoge where target = :vardate;





2011年6月21日火曜日

nexus one のバージョンアップ



NexusOneのバージョンアップを実施。


カスタムリカバリイメージが入ってるとOTAだめらしく、はまった。。。


最終的に、passimg.zip


で強制上書いちゃって解決。。。


ようやく2.3.4になった^0^


http://www.nexusoneforum.net/forum/nexus-one-development-hacking/12001-need-help-passimg-zip.html





2011年6月14日火曜日

setContentView



setContentView


の繰り返しは死ぬる。。。


メモリリークになるようだ。


setContentView


で新レイアウト適用する前に、古いViewを全部削除することで


回避可能っぽい?


現在お試し中。





2011年5月18日水曜日

android:screenOrientation=”portrait” 設定をしていても、landscapeのActivity生成が行われてしまう



端末を横向きにしていると画面回転(landscape表示)が発生してしまう。


その後、すぐにonDestroyが走り、


再度portrait表示が行われる。


◆原因


不明。。。


(startActivityForResultしているから??)


◆暫定対応


マニフェストのActivityタグに、


android:configChanges="orientation"


を追加することで対応。


(画面回転時のイベントを無視する)





2011年4月23日土曜日

Android 非同期処理



Activityがバックになった場合、AsyncTaskもキャンセルしたほうがいいのか。。。そりゃそうだ。


AsyncTask.cancel を呼ぶと、onPostExecute は呼び出されない


でも、Activityにバックグラウンドフラグとか持てば、それ見りゃいいか??





2011年3月2日水曜日

Activity遷移時のアニメーションを無効にしたい



adamrocker先生の


throw Life - ActivityのOpenとCloseをアニメーションさせる


・テーマ



<item name="android:windowAnimationStyle">@style/Animation.Activity</item>


・アニメーション指定しない



<style name="Animation" parent="android:Animation" />
<style name="Animation.Activity">
</style>


で行けそうだ。


明日やってみる!