2016-08-31 7 views
0

を返す私はfindViewById()は常に私のダイアログでImageViewのためにnullを返す問題だ:(ImageViewの)findViewById()は常にnull

private void startDetailView(int num)throws NullPointerException{ 

    Dialog detailed = new Dialog(this, android.R.style.Theme_Translucent_NoTitleBar_Fullscreen); 
    detailed.setContentView(R.layout.activity_detail_view); 
    TextView text = (TextView)detailed.findViewById(R.id.detailedTextView); 
    ImageView picture = (ImageView)findViewById(R.id.detailedImageView); 
    detailed.show(); 

    /*picture.setOnClickListener(new OnClickListener() { 
     @Override 
     public void onClick(View view) { 
      final Dialog dial = new Dialog(ScrollActivity.this, android.R.style.Theme_Translucent_NoTitleBar_Fullscreen); 
      dial.setContentView(R.layout.picture_view); 
      FrameLayout cont = (FrameLayout)findViewById(R.id.container); 
      cont.setBackground(getResources().getDrawable(R.drawable.vine)); 
      dial.show(); 

      cont.setOnClickListener(new OnClickListener() { 
       @Override 
       public void onClick(View view) { 
        dial.dismiss(); 
       } 
      }); 
     } 
    });*/ 
} 

XML:

<ImageView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:id="@+id/detailedImageView" 
    android:layout_below="@+id/detailedTextView" 
    android:layout_centerHorizontal="true" 
    android:layout_marginTop="134dp" /> 

エラー:

java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.FrameLayout.setOnClickListener(android.view.View$OnClickListener)' on a null object reference 
     at at.tryouts.mcfuckinvineapp.wein.ScrollActivity$1.onClick(ScrollActivity.java:78) 
     at android.view.View.performClick(View.java:5280) 
     at android.view.View$PerformClick.run(View.java:21239) 
     at android.os.Handler.handleCallback(Handler.java:739) 
     at android.os.Handler.dispatchMessage(Handler.java:95) 
     at android.os.Looper.loop(Looper.java:234) 
     at android.app.ActivityThread.main(ActivityThread.java:5526) 
     at java.lang.reflect.Method.invoke(Native Method) 
     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) 
     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 

これは、第2ダイアログのFrameLayoutでも発生します。暫定的にこれらの2つだけが影響を受け、私は問題なく他のビューを追加できます。

あなたが私を助けてくれることを願っています。何が間違っているのか想像できません。

+0

xml(可能であれば完成) – TWL

答えて

0

アクティビティビューを詳細ビューと間違えている可能性があります。 ImageViewは "layout_below:detailedTextView"だったので詳細ビューの下にあると思います。それを変更してみてください

ImageView picture = (ImageView) detailed.findViewById(R.id.detailedImageView); 
+0

ありがとう、それは問題を解決しました! – WDLinken

+0

問題ありません。他の人が同じ問題に遭遇すると答えを受け入れることを忘れないでください:) –

関連する問題