2017-04-01 5 views
-1

この問題に直面しています。私は約NullPointerExceptionを知っています。 フラグメントがクラッシュする。レイアウトsetOnClickListenerが動作しない

のJava

@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) 
{ 
    View view = inflater.inflate(R.layout.fragment_tab_home,container,false); 


     final Dialog alertDialog = new Dialog(getActivity()); 
     alertDialog.requestWindowFeature(Window.FEATURE_NO_TITLE); 
     alertDialog.setContentView(R.layout.dialog_viewpager); 
     alertDialog.getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT)); 
     alertDialog.show(); 
     viewPager = (ViewPager)alertDialog.findViewById(R.id.view_pager); 

     // layouts of all welcome sliders 
     // add few more layouts if you want 
       layouts = new int[]{ 
       R.layout.welcome_slide1, 
       R.layout.welcome_slide2, 
       R.layout.welcome_slide3, 

     } 

     myViewPagerAdapter = new ViewPagerAdapter(); 
     viewPager.setAdapter(myViewPagerAdapter); 

     RelativeLayout rl_header_thirdObj=(RelativeLayout)alertDialog.findViewById(R.id.rl_header_third); 
    //Here// rl_header_thirdObj.setOnClickListener(new View.OnClickListener() 
     { 
      @Override 
      public void onClick(View v) 
      { 
       alertDialog.dismiss(); 
      } 

    return view; 
} 

クラッシュによって引き起こさdalvik.system.NativeStart.main(ネイティブメソッド)で

: com.fragmentで java.lang.NullPointerExceptionが。 FragmentHome.onCreateView

rl_header_thirdObj.setOnClickListenerを示します。

FYI

RelativeLayout rl_header_thirdObj welcome_slide3.xmlプレゼント。

目的を達成するための正しい方法は何か分かりますか?誰かがこの問題に会いますか?どんな助けでも大歓迎です。

+0

あなた 'fragment_tab_home'レイアウト – rafsanahmad007

+0

' fragment_tab_homeは '.Parentは'相対Layout'でシンプルで、Button' – Kankana

+0

があなたを投稿 '持っ投稿レイアウトXMLファイル。 –

答えて

1

ここにRelativelayoutはあなたのalertDialogビューの一部ではありません。

ので、代わりに:

RelativeLayout rl_header_thirdObj=(RelativeLayout)alertDialog.findViewById(R.id.rl_header_third); 

使用:

RelativeLayout rl_header_thirdObj=(RelativeLayout)view.findViewById(R.id.rl_header_third); 
+0

いいえ。私は既に同じ名前を付けました。 – Kankana

+0

あなたはどこで 'layouts []'を使っていますか? – rafsanahmad007

+0

alertdialogのレイアウト 'dialog_viewpager'に上記のコードを適用することをお勧めします。 – rafsanahmad007

関連する問題