如何将一个arraylist从一个内部类传递给另一个已经启动的类?

时间:2018-05-19 14:55:09

标签: java android

我正在尝试从异步任务中检索ArrayList。此异步任务是另一个活动的内部类(OfflineBookingsFragment)。 从类TodaysBookingsActivity调用BackgroundTask2: -

OfflineBookingsFragment offlineBookingsFragment = new OfflineBookingsFragment();
            OfflineBookingsFragment.BackGroundTask2 backGroundTask2 = offlineBookingsFragment.new BackGroundTask2(getContext());
            backGroundTask2.execute();

为了让arraylist回到TodaysBookingsActivity,我在类TodaysBookingsActivity中创建了一个名为setarraylist的方法: -

public void setarraylist(ArrayList<VendorBookingsSummary> SummaryArrayList) {
     summaryAdapter = new SummaryBookingsAdapter(getContext(), SummaryArrayList);     
        bookinglv1.setAdapter(summaryAdapter);      
        summaryAdapter.notifyDataSetChanged();
        }

bookinglv在onCreate的TodaysBookingsActivity类中初始化。但它在方法中显示空指针异常。

如果我们使用意图使用Parcelable发送arraylist: -

 Intent intent = new Intent(mContext, TodaysBookingsActivity.class);
                    Bundle bundle = new Bundle();
                    bundle.putParcelableArrayList("Birds", VendorBookingsSummaryArrayList);
                    intent.putExtras(bundle);
                    startActivity(intent);

收到此错误。

java.lang.IllegalStateException: Fragment OfflineBookingsFragment{987d75c} not attached to Activity

0 个答案:

没有答案