2011-07-28 12 views
1

まず、アンドロイドキーボードに関する他の約1000の質問を知っています...私は手動でキーボードをウィンドウやコントロールから隠すことができ、キーボードの位置と時間を制御するはずの任意の数のフラグを渡すことができます浮き出る。アンドロイドのアッシニンキーボード操作を「修正する」方法はありますか?

基本的には、私のアプリでPREDICTABLEキーボード処理をすることを目指しています...つまり、このコントロールとポップアップキーボードのフォーカスを明示しない限り、ユーザーがテキスト編集をタップするとポップアップするだけです。

このアプリは広範囲に及んでおり、フォーカスされたコントロールだけでもキーボードを非表示にしようとしています(それぞれのフィールドを明示的に非表示にする)。

私はキーボードをポップアップするのを避けることができますが、テキスト以外の編集可能なフィールドにフォーカスを置くことで、それを望んでいないときには、他のものよりも多くのハックのように思えます。

私の質問は...アプリケーションが自動的に新しいダイアログ、断片などのキーボードをポップアップすることをアプリに強制する方法はありますか?このテキストフィールドに新しいダイアログに焦点を合わせたい場合は、手動で処理します。さらに、以前にフォーカスを当てたコントロールが消えてしまったときにキーボードの消滅を自動的に処理する方法はありますか?

私はちょっと論理を覚えていません...私が戻ってこれについて考えると、私は何かタイプしたいと思ったらキーボードがポップアップしたいだけです。限り、新しいダイアログが開いたときにすぐにキーボードがポップアップする...例外的なケースのように思える(私はそれをやりたいと思うだろうカップル回かもしれない)。

キーボードの状態を把握しているマネージャや何かを構築するのは心配しませんが、リモートで直感的なやり方で効率的に作業するために必要な情報を得ることができるかどうかはわかりません。

ポインタやアイデアは大変ありがとうと思います...私はこれで私の尻尾にいるので...私はあなたにこれを研究し、修正を試みるのにかなりの時間を費やしました。

注:タイトルまたは敵意については申し訳ありません...私はかなりの時間の間これを戦ってきました、そして、キーボードの奇妙な扱いができます一般的に激怒しています。

+0

私は少しあなたの要求によって混乱しています。あなたの見積もり '私はまた、非テキスト編集可能フィールドに焦点を合わせることで、そこにそれを必要としないときにポップアップキーボードを避けることができることを知っています.'それは**予測可能であり、edittextの外側をクリックすると、それは意図どおりに消え去る。特にダイアログやフラグメントを開いている場所でコードを投稿することができれば、それは素晴らしいことです。あなたは自動的にテキストボックスの編集に集中していますか?それで、 "自動ポップアップ"ですか? – Otra

+0

それは予測可能です...しかし、私の要点は、テキストエディットがフォーカスされたときにキーボードがポップするのをやめたいのです...ユーザーがクリックするとポップするようにします。テキストフィールドは、新しく開いたダイアログなどの一部である場合、自動フォーカスを取得することがよくあります。 – Ronnyek

答えて

0

私の質問は、アプリを絶対に自動でポップアップさせないようにする方法ですか?

しかし、あなたが使用することができます。各活動に

this.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN); 

+1

テーマを使って設定することもできます。これは 'R.styleable'で表示されるためです。 – CommonsWare

+0

そのsetSoftInputModeを持つビューのタブコントロールがそれを無視する理由は何ですか?私は、タブコントロールが効果的に表示を切り替えることを知っていますが、親ウィンドウに常に隠すように指示されている場合は...キーボードが消えてしまうことを期待します=( – Ronnyek

0

私はあなたが求めているものを得ると思います。ここでは第二の答えを見てください:

Stop EditText from gaining focus at Activity startup

あなたはsoftkeyboardは、あなたの活動のタグ(<activity>)の先頭にこのandroid:windowSoftInputMode="stateHidden"を追加することで非表示にする必要があるかどうか、あなたのAndroidManifest.xmlに指定することができます

+0

私はこれについて知りませんでした...そして、断片に重く基づいています...そして、ごくわずかな活動です。 – Ronnyek

関連する問題