2011年8月22日月曜日

android Tabを必要な時だけ表示する

Tabを使ったアプリで必要な時だけタブを出す方法。


まずはタブを追加
※ 前提として、既にタブが2つ設定されている

TabHost mTabHost = getTabHost();
TabSpec tab3 = mTabHost.newTabSpec("TAG3");
tab3.setIndicator"tab3");
tab3.setContent(R.id.content3);
mTabHost.addTab(tab3);

これでタブが表示される。
次はタブの削除

	@Override
	public void onTabChanged(String tabId) {
		if(mTabHost.getTabWidget().getTabCount() >= 3
				&& mTabHost.getCurrentTab() != 2) {
			Log.d("tabChanged", "remove tab");
			mTabHost.getTabWidget().removeViewAt(2);
		}
	}

追加された状態かをチェックして、他のタブにフォーカスが移ったら
TabWidgetからremoveViewすればOK。

2011年8月19日金曜日

proguardの注意

一昨日、あまりに売れないから放置してたアプリでエラーが出てることを知りました。2週間放置しちゃって、買ってくれた方ごめんなさい…。

原因は難読化のproguardが悪さをして、xmlのandroid:onClickで指定したメソッドが見つからないことでした。多分、エミュレーターや実機に実行してテストしてる人が多いと思うけど、exportした時だけ発生する現象なのでご注意下さい。

回避策は

-keepclassmembers class * extends andriod.app.Activity {
   public void *(android.view.View);
}

をproguard.cfgに追記する。
そうすると、対象部分は難読化されないため、xmlの指定で見つけられます。

*部分は具体的なクラス名、メソッド名でもOK。
下記を参考にしました。
http://stackoverflow.com/questions/6666292/android-onclick-events-and-pro-guard

2011年8月4日木曜日

SVGをBufferedImageに変換する方法、拡大縮小する方法

ソース書きたいとこだけど、会社で使うので書けない…
ということで、参考にしたサイトを紹介。
http://bbgen.net/blog/2011/06/java-svg-to-bufferedimage/

英語だけど、開発者ならわかるはず!
拡大縮小は渡すwとhを変えればオッケー。
ほとんど画質に影響ありません。

ただ、不思議な拡大縮小で、縦横比維持で小さい方の倍率に合わせて拡大縮小して、余ったスペースは横は左、縦は下に余白になる。試したのが透過のだったから、透過領域が広がってました。

ご参考までに!

2011年8月3日水曜日

検索に復帰

新しいアドレスが反映されました!
古いの消えてたから、反映に時間がかかる模様。

GoogleのWeb検索の追加とかもしたけど、それだけだと旧は残るだろうから。ボットの巡回周期の問題とかかな。

2011年7月28日木曜日

アドレス変えたら検索に表示されない

blogspotのアドレスを変えたら検索に表示されなくなった…

[旧アドレス]のブログは削除されました。このアドレスは新しいブログではご利用いただけません。

と表示されます。

復活したら報告します。

2011年7月26日火曜日

海の公園

テレビに海の公園が!!
水難事故の防止講座?

海の危険というか、わかめまみれになっとるがな!!w

マスボクシング

眼窩底骨折をして、ボクシングの試合が流れて、入院後しばらくは実践練習なしで身体動かしてたけど、今週から、徐々に実践練習してます。まだマスボクシングですが。

実践練習にはガチのスパーリング(よく聞く、グローブ大きめ、防具付きで試合形式)と増すボクシングっていう軽いタイミング掴む手合わせみたいなのがあります。
人によってはマスでもスパーになっちゃったりするんだけど。

なぜか、入院後、身体のバランスが良くなった気がするせいか、今日も結構いいの入った。軽くだけど、倒れるんじゃないかって良いタイミングで。

最近よく思う。ボクシングは力じゃなくてキレとタイミングで倒すものだ。

それにしても、やっぱ実践練習は楽しい!