2016-09-07 12 views
1

私のlistviewは19行あり、リストビューからすべてのedittextデータを取得し、arraylistに格納する必要があります。listviewからすべてのedittextデータを取得する方法

btn.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View view) { 


      int itemCount = mListView.getCount(); 
      Log.d("count", ""+itemCount); 
      final ArrayList<String> collection = new ArrayList<>(); 
      for(int i=0; i<itemCount; i++){ 

       view1 = mListView.getChildAt(i); 

       Log.d("Position: ", ""+view1); 
       EditText tt = (EditText)view1.findViewById(R.id.etqty); 
       value = tt.getText().toString(); 


        collection.add(value); 
      } 

      //int position = contractstoreAdapter.getItem(); 
      Log.d("number", String.valueOf(collection)); 

     } 
    }); 

これは私のエラーです。

09-07 08:09:05.526 8669-8669/com.example.chintatt.cbi E/AndroidRuntime: FATAL EXCEPTION: main 
                     Process: com.example.chintatt.cbi, PID: 8669 
                     java.lang.NullPointerException: Attempt to invoke virtual method 'android.view.View android.view.View.findViewById(int)' on a null object reference 
                      at com.example.chintatt.cbi.Fragment_orderstock$1.onClick(Fragment_orderstock.java:107) 
                      at android.view.View.performClick(View.java:5198) 
                      at android.view.View$PerformClick.run(View.java:21147) 
                      at android.os.Handler.handleCallback(Handler.java:739) 
                      at android.os.Handler.dispatchMessage(Handler.java:95) 
                      at android.os.Looper.loop(Looper.java:148) 
                      at android.app.ActivityThread.main(ActivityThread.java:5417) 
                      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) 
+0

あなたがこの問題の解決策を得るのですか?私は私のプロジェクトで同じ問題に直面しています。 – nandha

答えて

0
for (int i = 0; i <= mListView.getLastVisiblePosition() - mListView.getFirstVisiblePosition(); i++) 

私は、これはあなたが実装する必要がループする必要があります信じています。

+1

表示されているedittextデータを取得するだけでなく、すべてのedittextデータを取得する必要があります –

0
EditText tt = (EditText)view1 

ライン上の利用

EditText tt = (EditText)view1.findViewById(R.id.etqty); 

なぜあなたは常に、子ビューを起こし、データが含まれていないあなたは、ビュー自体

+0

view1は指定されたListVie内の個々のセルでなければなりません。 EditTextにキャストするとどのように問題が解決しますか? – SWAT

+0

あなたは正しいですがエラーログを見ていると思います。@khorはあなたの全体像がテキストを編集しているかどうか確認してください。 – anddevmanu

+0

私の問題を解決するものはありません。ああ、私はリストビューで全体の編集テキストを取得する必要があります。 –

1

リストビューでのEditTextを取得するかどうか、)(findViewByIdを呼び出していますディスプレイに表示されるたびに作成されます

データを格納するためにアダプタを使用している必要がありますか?そこからすべての情報を取得しようとします。 ListViewからではなく、データに含まれるアダプタから取得します。

uはuがアダプタにデータを格納する方法を伝えることができるならば、これはそれがあなたの答えを伝えるために、さらに私を助けるあなたに

を助けることを願っています正確に

関連する問題