月別: 2016年11月

すぐ帰る金曜(`・ω・´)

android用の神経衰弱ゲームを公開しました(・∀・)
The Match-up(Memory) game for android was released!

Google Play:
Mole's Match-up.

Introduction page:
Mole’s Match-upをリリースした∩( ・ω・)∩


明日と明後日はスーツを着て寒い中、眠い目をこすりつつ出勤しなくていい(・∀・) シュゴイ

ディスガイアやりながらEditTextPreferenceにTextWatcherを実装してVerifyする実験をしよう(`・ω・´) タブンネ
http://stackoverflow.com/questions/18307770/how-to-set-null-validation-in-edittextpreference-dialog

蘇る勤労(`・ω・´)

android用の神経衰弱ゲームを公開しました(・∀・)
The Match-up(Memory) game for android was released!

Google Play:
Mole's Match-up.

Introduction page:
Mole’s Match-upをリリースした∩( ・ω・)∩


一ヶ月の短期だけども、IT系な案件に潜り込むことに成功した(`・ω・´) コチラ,モール,センニュウニセイコウシタシタ

久し振りに高層のインテリジェントビルに行ったけど、眺めがいいわぁ(・∀・)
それだけでもかなり楽しいw 来年もこういう仕事にありつけたらいいのぅ。

プログラミングはちょっと滞るけど、致し方あるまい( ・´ω・`) イヤ、ディスガイアノセイジャナイヨ

( ゚Д゚)ハッ またサイト更新してない…

android用の神経衰弱ゲームを公開しました(・∀・)
The Match-up(Memory) game for android was released!

Google Play:
Mole's Match-up.

Introduction page:
Mole’s Match-upをリリースした∩( ・ω・)∩


ちょっと風邪気味だったり登録に行っていたり、ディスガイアでグッドエンドに
辿り着けずにもう一周していたりしたら、また日にちがあいてしまった(´・ω・`)

EditTextPreferenceはどうしてもやりたいことをやるためには、やはり継承してTextWatcherだか言うやつを
くっつけないと駄目かな?あるいはDialogのOndismiss()だかか…

そう言えばしまぽいんとさんととらぽいんとさんのたからものも入手したから、あれもやらんと。


何故か時間が足りない…( ・´ω・`) ディスガイアノプレイジカンガ150ジカンヲコシマシタ…

ちょっと寒くなってきた(´・ω・`)ブルッチョサムサム

android用の神経衰弱ゲームを公開しました(・∀・)
The Match-up(Memory) game for android was released!

Google Play:
Mole's Match-up.

Introduction page:
Mole’s Match-upをリリースした∩( ・ω・)∩


相変わらずEditTextPreference絡みで悩んでいる。
onSharedPreferenceChangedでベリファイ(及び場合によっては修正)して更新する場合、ユーザーが入力後に再び同じ項目を開いた時にベリファイと修正がされず、正しくない値が表示されてしまうので、チョトカコヨクナイ(´・ω・`)

EditTextPreferenceの方のリスナでベリファイと修正をしてしまうべきのような気がしてきた。そうするとそこまでやるなら継承してカスタムしたEditTextPreferenceを作るべきなんじゃなかろうかと思ったり、なんか時間がかかりそうなのでまた躊躇したり。

本腰を入れて取りかかれば一日もかからないとは思うものの、PS2のディスガイアをついついやってしまったり、お仕事が見つからないから短期派遣のデータ入力に応募したりと色々と時間が足りない(´・ω・`) ナゼダ フシギダ


そういえば一般的なサンプルコードに載ってるサマリー更新の為のreloadSummary()みたいなメソッドだと子のPreferenceScreenのサマリーが更新されないことに気づいた(ノ∀`)

なんか変だなとは思っていたが、ブレークポイントを設定しても全く引っかからないので不思議に思い、ListAdapterのgetCount()メソッドでそのgetRootAdapter()で取得したアダプタが持っている項目数を見てみたら、明らかに少ないw 

よくよく考えてみたらPreferenceScreenに対してrootアダプタだから、その下のPreferenceScreenは別のrootアダプタを持つんだなw

ちょっと改変したが、この内容で正しいのかどうかは不明(ノ∀`)

private void reloadSummaryRecursive(ListAdapter adapter){
			Log.d("count", ""+adapter.getCount());
			for (int i=0;i<adapter.getCount();i++){
				Object item = adapter.getItem(i);
				if (item instanceof ListPreference){
					ListPreference preference = (ListPreference) item;
					preference.setSummary(preference.getEntry() == null ? "" : preference.getEntry());
				}else if(item instanceof SeekBarPreference){
					SeekBarPreference seekBar = (SeekBarPreference)item;
					seekBar.setSummary(String.valueOf(seekBar.getCurrentProgress()));
				}else if(item instanceof EditTextPreference){
					EditTextPreference editText = (EditTextPreference)item;
					editText.setSummary(editText.getText());
				}else if(item instanceof PreferenceScreen){
					PreferenceScreen ps = (PreferenceScreen)item;
					Log.d("Child count", ""+ps.getRootAdapter().getCount());
					reloadSummaryRecursive(ps.getRootAdapter());
				}
			}
		}

呼び出す時はちょっと面倒くさいが

ListAdapter adapter = getPreferenceScreen().getRootAdapter();
			reloadSummaryRecursive(adapter);

という感じになる。

ここまで書いてきて、アレ(´・ω・`)?ってなってきた。
なんで最初の方にListPreferenceやseekbarのサマリーをセットしてるんだっけ?
コピペしてきた元のコードがそうなっていたんだっけか?
その辺も調べなきゃ…(ヽ’ω`)