2017-08-03 6 views
0

nullオブジェクト上の仮想メソッドボイドを起動しようとすると表示することはできませんが、それは私が発行できますTextViewにはIntent.getStringExtraとリターンが、私は別のMainactivityアダプタデータを送信するつもり、その後のTextViewでそれを表示しています

メインActivity.java

Article m = articleList.get(position); 
int catidd = (int) view.getTag(); 
intent.putExtra(cat_id, String.valueOf(catidd)); 
intent.putExtra("title", m.title); 
intent.putExtra("thumbnailUrl", m.thumbnailUrl); 
intent.putExtra("description", m.description); 
startActivity(intent); 

が、これは細部の意図にパラメータを送り... Detailview.java

TextView description = (TextView) findViewById(R.id.detail_description); 

final String catid = intent.getStringExtra(MainActivity.cat_id); 
// String message = "Test"; 
id = catid; 
//String title = intent.getExtras().getString("title"); 
pDialog = new ProgressDialog(this); 
// Showing progress dialog before making http request 
pDialog.setMessage(this.getIntent().getStringExtra("description")); 
pDialog.show(); 

description.setText(this.getIntent().getStringExtra("description")); 

今ダイアログショーデータが、description.setTextがNull例外リターンがnullオブジェクト

content_detailview.xml>レイアウト

<?xml version="1.0" encoding="utf-8"?> 
<android.support.design.widget.CoordinatorLayout 
xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:app="http://schemas.android.com/apk/res-auto" 
android:layout_width="match_parent" 
android:layout_height="match_parent"> 


<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical" 
    android:weightSum="3.2" 
    > 

    <RelativeLayout 
     android:id="@+id/viewA" 
     android:layout_width="match_parent" 
     android:layout_height="0dp" 
     android:layout_weight="1.6" 
     android:background="@drawable/articleimg" 
     android:gravity="center_horizontal|center_vertical"></RelativeLayout> 

    <LinearLayout 
     android:layout_height="0dp" 
     android:layout_width="match_parent" 
     android:layout_weight="3.24" 
     android:orientation="vertical" 
     android:padding="10dp" 
     android:weightSum="10" 
     > 



     <LinearLayout 
      android:layout_height="match_parent" 
      android:layout_width="match_parent" 
      android:layout_weight="1" 
      android:weightSum="4" 
      android:orientation="horizontal" 
      > 
      <TextView 
       android:id="@+id/detail_description" 
       android:layout_height="match_parent" 
       android:layout_width="match_parent" 
       android:text="Name" 
       android:textSize="22dp" 
       android:textColor="@android:color/black" 
       android:padding="3dp" 
       /> 

     </LinearLayout> 

    </LinearLayout> 

</LinearLayout> 

<TextView 
    android:id="@+id/detail_title" 
    android:layout_width="300dp" 
    android:layout_height="300dp" 
    android:layout_margin="6dp" 
    android:clickable="false" 
    android:elevation="10dp" 
    android:textSize="40dp" 
    android:gravity="top|left" 
    android:textColor="@android:color/white" 
    app:layout_anchor="@id/viewA" 
    app:layout_anchorGravity="bottom"/> 


<TextView 
    android:id="@+id/floating" 
    android:layout_width="60dp" 
    android:layout_height="60dp" 
    android:layout_margin="10dp" 
    android:gravity="top" 
    android:clickable="false" 
    android:background="@drawable/dots" 
    app:layout_anchor="@id/viewA" 
    app:layout_anchorGravity="bottom|end" 
    /> 

+0

'getIntent()getStringExtra(MainActivity.cat_id);' –

答えて

0

上の仮想メソッドボイドを起動しようとできます私は(findViewById後にsetContentView()を呼び出していました)間違っていた。

setContentView()が実行されるまで、viewは配置されていないため、ビューに含まれているものを調べることはできません。最後の行を少し動かすと、問題を解決するはずです。

修正

setContentView(R.layout.activity_show_second); 
textView = (TextView)findViewById(R.id.textViewdata); 
textView.setText(message); 
関連する問題