私は互換パッケージを使用しており、onCreateView でaFragment
を返す人がいます。WebView
問題は、onCreate 中にフラグメントが追加されない場合、ソフトキーボードActivity
内のテキストボックスをクリックしたときにWebView
表示されないことです。カスタム Web フラグメントを追加した後にデバイスを回転させてアクティビティを再作成すると、テキスト フィールドをクリックするとソフトキーボードが表示されます。
明確にするために、2つの異なるシナリオを次に示します
public void onCreate(Bundle state){
if(state == null){
WebFragment web = new WebFragment();
getSupportFragmentManager.beginTransaction().add(android.R.id.content, web).commit();
}
}
public void onClick(View v){
WebFragment web = new WebFragment();
getSupportFragmentManager.beginTransaction().add(android.R.id.content, web).commit();
}
アクティビティの onCreate メソッド中にフラグメントを追加する最初のケースでは、フラグメントに含まれる WebView は、テキスト フィールドが押されたときに正常に機能します。ただし、2 番目の例では、Web ビューが表示された後にデバイスを回転させない限り、Web ビューのテキスト フィールドをクリックしても何も起こりません。フラグメントが適切に機能するために新しいアクティビティを作成する必要がある場合、誰かが解決策を提供できますか?そもそもフラグメントの目的を打ち負かします。