2017-06-12 18 views
-3

firebaseを使用したアンドロイドアプリを開発しました。 Firebaseではなくwebsocketでコードを再利用することにしました。いくつかの助けを借りて私はそれを開発しており、かなりうまくいっています。しかし、私は1つのコンポーネントに問題がありました。Androidアプリが原因で起きたことなしにクラッシュしました

1つのアクティビティで、アンドロイド.r.layout.simple_list_item_multiple_choiceを含むリストビューを含むダイアログを開こうとすると、アプリケーションのクラッシュ...というエラーが表示され、問題が発生します。

ダイアログボックスに情報をロードしてエラーなしで表示するコードをデバッグします... nullオブジェクトまたは「原因」を見つけることができません。通常、エラーが発生する場所を見つけるのに役立ちます。

06-12 00:59:56.718 2289-2289/wazodevs.com.coletask E/AndroidRuntime: FATAL EXCEPTION: main 
     Process: wazodevs.com.coletask, PID: 2289 
     java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String java.lang.Object.toString()' on a null object reference 
      at android.widget.ArrayAdapter.createViewFromResource(ArrayAdapter.java) 
      at android.widget.ArrayAdapter.getView(ArrayAdapter.java) 
      at android.widget.AbsListView.obtainView(AbsListView.java) 
      at android.widget.ListView.makeAndAddView(ListView.java) 
      at android.widget.ListView.fillDown(ListView.java) 
      at android.widget.ListView.fillFromTop(ListView.java) 
      at android.widget.ListView.layoutChildren(ListView.java) 
      at android.widget.AbsListView.onLayout(AbsListView.java) 
      at android.view.View.layout(View.java) 
      at android.view.ViewGroup.layout(ViewGroup.java) 
      at android.widget.LinearLayout.setChildFrame(LinearLayout.java) 
      at android.widget.LinearLayout.layoutHorizontal(LinearLayout.java) 
      at android.widget.LinearLayout.onLayout(LinearLayout.java) 
      at android.view.View.layout(View.java) 
      at android.view.ViewGroup.layout(ViewGroup.java) 
      at android.widget.LinearLayout.setChildFrame(LinearLayout.java) 
      at android.widget.LinearLayout.layoutVertical(LinearLayout.java) 
      at android.widget.LinearLayout.onLayout(LinearLayout.java) 
      at android.view.View.layout(View.java) 
      at android.view.ViewGroup.layout(ViewGroup.java) 
      at android.widget.RelativeLayout.onLayout(RelativeLayout.java) 
      at android.view.View.layout(View.java) 
      at android.view.ViewGroup.layout(ViewGroup.java) 
      at android.widget.FrameLayout.layoutChildren(FrameLayout.java) 
      at android.widget.FrameLayout.onLayout(FrameLayout.java) 
      at android.view.View.layout(View.java) 
      at android.view.ViewGroup.layout(ViewGroup.java) 
      at android.widget.FrameLayout.layoutChildren(FrameLayout.java) 
      at android.widget.FrameLayout.onLayout(FrameLayout.java) 
      at android.view.View.layout(View.java) 
      at android.view.ViewGroup.layout(ViewGroup.java) 
      at android.widget.LinearLayout.setChildFrame(LinearLayout.java) 
      at android.widget.LinearLayout.layoutVertical(LinearLayout.java) 
      at android.widget.LinearLayout.onLayout(LinearLayout.java) 
      at android.view.View.layout(View.java) 
      at android.view.ViewGroup.layout(ViewGroup.java) 
      at android.widget.FrameLayout.layoutChildren(FrameLayout.java) 
      at android.widget.FrameLayout.onLayout(FrameLayout.java) 
      at android.view.View.layout(View.java) 
      at android.view.ViewGroup.layout(ViewGroup.java) 
      at android.view.ViewRootImpl.performLayout(ViewRootImpl.java) 
      at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java) 
      at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java) 
      at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java) 
      at android.view.Choreographer$CallbackRecord.run(Choreographer.java) 
      at android.view.Choreographer.doCallbacks(Choreographer.java) 
      at android.view.Choreographer.doFrame(Choreographer.java) 
      at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java) 
      at android.os.Handler.handleCallback(Handler.java) 
      at android.os.Handler.dispatchMessage(Handler.java) 
      at android.os.Looper.loop(Looper.java) 
      at android.app.ActivityThread.main(ActivityThread.java) 
      at java.lang.reflect.Method.invoke(Native Method) 
      at java.lang.reflect.Method.invoke(Method.java:372) 
      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java) 
      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java) 
06-12 00:59:57.008 356-1014/? E/BandwidthController: No such appUid 10117 to remove 

Thx 4 all!

+0

ArrayAdapterで渡すList内のアイテムはすべてnullです。そのため、nullオブジェクト参照で「java.lang.String java.lang.Object.toString()」が取得されるのはなぜですか。あなたのリストの項目を確認してください。 –

答えて

0

と呼ばれているcreateViewFromResource上の唯一の場所でありますarrayAdapterをロードする文字列のリストで、aImagesには8つの要素がありますが、ObtainImgsは8つのうちの3つをフィルタリングして埋めます...しかしインスペクタにnullはありませんでした。 .... Thxみんな!

String [] listArray = new String [aImages.length]; listArray = obtainImgs(listArray);

0

私は エラーなしで、ダイアログやショーで情報を読み込むコードをデバッグ...私はnullオブジェクトを見つけることができないか、通常 それが誤りであることができる場所を見つけるのに役立ちますその「によって引き起こされます」 ...

データセットにはnull値が含まれています。内部的には、ArrayAdapterは、次のチェックを行います。

final T item = getItem(position); 
if (item instanceof CharSequence) { 
    text.setText((CharSequence) item); 
} else { 
    text.setText(item.toString()); 
} 

、それはtoStringが答えは、問題は、私が作成しなければならなかったということでした....かなり馬鹿だった

関連する問題