2015-09-21 102 views
2

有人可以幫助我嗎? 我不知道爲什麼我javaNullExepction在LayoutInflater.Here是我的代碼:佈局inflater爲空

此代碼是在片段:

ServiceManager.getInstance().getCampaign(new Callback <Campaign>() { 
      @Override 
      public void success(Campaign campaign, Response response) { 
       campaigns = campaign; 
       adapter = new RecyclerCampaignAdapter(getActivity(), campaign); 
       recyclerView.setAdapter(adapter); 
       recyclerView.addItemDecoration(new HorizontalDividerItemDecoration.Builder(getActivity()).marginProvider(adapter).showLastDivider().build()); 
       adapter.notifyDataSetChanged(); 
       if (progressBar.isShown()) { 
        progressBar.setVisibility(View.INVISIBLE); 
       } 
      } 

      @Override 
      public void failure(RetrofitError retrofitError) { 
       Toast.makeText(getActivity(), "Failed" + retrofitError, Toast.LENGTH_SHORT).show(); 
       progressBar.setVisibility(View.GONE); 
      } 
     }); 

這裏是我的適配器代碼:

public RecyclerCampaignAdapter (Activity activity, Campaign campaignList) { 
     this.activity = activity; 
     this.campaignList = campaignList; 
     this.inflater= LayoutInflater.from(activity); 
    } 

我認爲getActivity() == null我不知道如何解決它。

顯示java.lang.NullPointerException 在android.view.LayoutInflater.from(LayoutInflater.java:212) 在tr.org.yyd.yeryuzudoktorlari.adapter.RecyclerCampaignAdapter。(RecyclerCampaignAdapter.java:38) 在tr.org.yyd.yeryuzudoktorlari.fragment.CampaignFragment $ 1.success(CampaignFragment.java:69) 在tr.org.yyd.yeryuzudoktorlari.fragment.CampaignFragment $ 1.success(CampaignFragment.java:65) 在retrofit.CallbackRunnable $ 1 .run(CallbackRunnable.java:45) at android.os.Handler.handleCallback(Handler.java:733) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:146) at android.app.ActivityThread.main(ActivityThread.java:5756) at java.lang.reflect.Method.invokeNative(Native Method) at java .lang.reflect.Method.invoke(Method.java:515) at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:1291) at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1107) 在dalvik.system.NativeStart.main(本機方法)

編輯: 我使用frgment交易取代方法時,從menu.So Campaig一個項目用戶點擊nFragment在用戶第一次點擊時工作,但當用戶再次點擊時它會崩潰。 如果我換入另一個片段並返回到CampaginFragment,則不會崩潰。

+0

是否使用RecyclerView.Adapter? – Mood

+0

嘗試使用getApplicationContext(),而不是getActivity和適配器使用右鍵實例,而不是活動 –

+0

是我使用RecyclerView.Apadpter。我在Fragment中調用了Recyclervew.Adapter。沒有getApplicationContext的命令。 –

回答

0

答案只是that.I不知道該如何解決它,但它worked.It只是一個控制。

if (getActivity() != null) { 
    adapter = ....