-4

私はクラスのjava.lang.NullPointerException:。getDialogための()は、GetWindow()

public class ABCD_Fragment extends DialogFragment { 

@Override 
    public void onViewCreated(View view, @Nullable Bundle savedInstanceState) { 
     getDialog().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE| WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE); 
     super.onViewCreated(view, savedInstanceState); 
    } 

} 

でこれをしようとしています。このエラーメッセージ

java.lang.NullPointerException: Attempt to invoke virtual method 'android.view.Window android.app.Dialog.getWindow()' on a null object reference 

を取得しています、私を助けてください。私はなぜgetDialog()がnullであるのか分からない。

+0

Downvotersは投票の代わりに私を助ける – VVB

+0

そのリンクを確認してください –

+0

してくださいCK、このリンクします。http://www.androidbegin.com/tutorial/android-dialogfragment-tutorial/ – KishuDroid

答えて

0

使用このあなたはフラグメントからそれを呼び出している場合:あなたはActivityからそれを呼び出している場合

FragmentManager fragmentManager = getFragmentManager(); 
       ABCD_Fragment mDialogwindow = new ABCD_Fragment(); 
       mDialogwindow.show(fragmentManager, "DIALOG WINDOW"); 

FragmentManager fragmentManager = getSupportFragmentManager(); 
      ABCD_Fragment mDialogwindow = new ABCD_Fragment(); 
mDialogwindow.show(fragmentManager, "DIALOG WINDOW"); 

そして、あなたのABCD_FRAGMENTにこの追加:

getDialog().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE| 
WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE); 
     super.onViewCreated(view, savedInstanceState); 
+0

getDialog()それはviewpagerのdialogfragment – VVB

+0

であるとして、あなたはこれを試していました私にはnullを与える: \t @Override \tパブリックビューonCreateView (LayoutInflaterのインフレータ、のViewGroupコンテナ、 \t \t \tバンドルsavedInstanceState){ \t \tビューrootView = inflater.inflate(R.layout "あなたのダイアログフラグメントレイアウト"、コンテナ、 \t \t \t \t偽。); \t \t getDialog()。setTitle( "My DIALOG FRAGMENT"); \t \t \t \t //何か他のことを実行してください \t \t return rootView; \t} –

関連する問題