2016-07-31 64 views
0

我有一個Adapter文件爲RecyclerView,給這個Android Studio警告: Private field 'context' is assigned but never accessed即使我使用this.context = context。我有一個Adapter文件的另一個工作應用程序,它具有與context完全相同的代碼,Android Studio不會爲該文件發出警告。我在這裏錯過了什麼?Android RecyclerView:爲什麼Adapter的上下文返回警告?

ContactListAdapter.java文件,警告:

package com.example.jdw.sixteenthversion; 

import android.content.Context; 
import android.support.v7.widget.CardView; 
import android.support.v7.widget.RecyclerView; 
import android.view.LayoutInflater; 
import android.view.View; 
import android.view.ViewGroup; 
import android.widget.CheckBox; 
import android.widget.TextView; 

import java.util.ArrayList; 
import java.util.List; 

public class ContactListAdapter extends RecyclerView.Adapter<ContactListAdapter.ListViewHolder> { 

private List<Contact> contactList; 
**private Context context**; 

private RecyclerItemClickListener recyclerItemClickListener; 

public ContactListAdapter(Context context) { 
    this.context = context; 
    this.contactList = new ArrayList<>(); 
}  

這是工作程序的ContactListAdapter.java文件並沒有工作室警告:

package com.wimso.android_sqlite.adapter; 

import android.content.Context; 
import android.content.res.Resources; 
import android.graphics.Bitmap; 
import android.support.v7.widget.RecyclerView; 
import android.view.LayoutInflater; 
import android.view.View; 
import android.view.ViewGroup; 
import android.widget.ImageView; 
import android.widget.TextView; 

import com.wimso.android_sqlite.R; 
import com.wimso.android_sqlite.listener.RecyclerItemClickListener; 
import com.wimso.android_sqlite.model.Contact; 
import com.wimso.android_sqlite.widget.LetterTile; 

import java.util.ArrayList; 
import java.util.List; 

public class ContactListAdapter extends RecyclerView.Adapter<ContactListAdapter.ContactHolder>{ 

private List<Contact> contactList; 
**private Context context**; 

private RecyclerItemClickListener recyclerItemClickListener; 

public ContactListAdapter(Context context) { 
    this.context = context; 
    this.contactList = new ArrayList<>(); 
} 
+0

你是否在除this.context = context之外的其他地方使用上下文?如果不是這就是你接到警告的原因。 –

+0

沒有其他地方。爲什麼我會在一個應用程序的文件中得到警告,但是我沒有在具有完全相同的「this.context = context」代碼的其他應用程序文件中得到警告。 – AJW

+0

這就是你收到警告的原因。 –

回答

0

此警告的手段,你不使用類的休息你context場。如果你不需要它,你可以刪除它。除非你不刪除它不會是一個問題。

+0

我在「public ContactListAdapter(Context context)」方法中使用它。如果我刪除「私人上下文環境」,那麼應用程序將崩潰。 – AJW

+0

此上下文是另一個上下文,因爲參數來自您調用ContactListAdapter的地方。如果您不需要ContactListAdapter類的上下文休息,也從構造函數中刪除。 – faranjit

相關問題