の呟きは 34
ボーナスダンジョンの鍵、ラスト1個やっとゲット・・・
結果はハズレ3・・・残念・・・パラディンパーティLv64になった・・・やっとね・・・
エンゼル帽の入れ替えが遅かったため、マロンとユッカは主人公とブーショの半分くらいの経験値でLv65になりそう・・・
百式ドラゴン
運がよければ1ターン討伐が可能だな・・・
メタキン剣つよい
ただ、アンコールパーティである必要があるのと
晴れ条件が欲しいのと
助っ人が十分頼りになるというのが欲しいのと・・・clearFocusというのもあるらしい
clearFocusでもIME消えないね・・・
キーボードが消えない理屈を見つけた気がする
公式のAPIドキュメントの
ViewのドキュメントのとこのTouch Modeのとこで
タッチ対応デバイスの場合、ボタンにフォーカスが行かなくなりクリッイベントリスナー呼び出すだけになる、とある・・・EditText編集後にボタンをタッチしてもキーボードが消えないのは、EditTextからフォーカスが動かないせいか・・・
isInTouchModeでタッチモードかどうかを判定できるとかどうとか・・・
もしかすると
android:focusableInTouchModeで回避できたりする・・・?ボタンをタッチ時に
requestFocusFromTouchを呼び出すだけでも良さそうな雰囲気ありそう?ひとまずこれを試してみるか・・・
requestFocusFromTouchでフォーカス移動はするものの
IMEは消えません・・・
日本語の説明あった・・・
https://developer.android.com/guide/topics/ui/ui-events?hl=jaつまりキーボードが消えない理由は
フォーカスとは無関係そもButtonがTextViewのサブクラスなのだから
IMEと無縁なフォーカスを持てる何かにフォーカスを移したほうが・・・いい?Viewのサブクラスならフォーカスいけるはず
普通にスピナーにフォーカス移ってもキーボード消えなかったので
たぶん、違う
- (UPD ) #
EditTextをsetEnabled(false)にするとかどうだろうね
ダメそうな予感・・・
めっちゃ古いイシューだった
無関係のやつ
諦めてInputMethodManagerからhideすることにした
IMPLICT_ONLYとかいうフラグは、意味ないね・・・
フラグは0を使うしかなかった・・・intentで別のアクティビティ開いて戻ってくると消えてるし
アクティビティ全体の再描写を要求できれば、非表示にできそうにも思えるのだけど・・・
IMMでキーボード非表示にしても結局は再描写が発生するわけだし・・・?- (UPD ) #
全体の再描写の要求方法がわからない
Viewのパーツ単位ならinvalidateとかいうメソッドはあるのだけど・・・
View.getRootView()あたりでinvalidateすればいいのだろうか?
あるいはrequestLayout?
(omitted)
(omitted)
(omitted)
まぁそもそもフォーカスを外せないとダメかもしれないけど
どうしたもんかね・・・