[英]Android - Adapters in fragments issue
我是Android開發的新手,當我嘗試在片段中使用適配器時出現錯誤,我試着在onCreateView
下編寫這一行
valueAdapterEn = new ValueAdapterEn(English_list, this);
此錯誤在此部分(English_list, this)
ValueAdapterEn
public class ValueAdapterEn extends BaseAdapter implements Filterable {
private ArrayList<String> English_List;
private ArrayList<String> Filterd_EngList;
private LayoutInflater mInflater;
private ValueFilter valueFilter;
public ValueAdapterEn(ArrayList<String> English_List, Context context){
this.English_List = English_List;
this.Filterd_EngList = English_List;
mInflater = LayoutInflater.from(context);
getFilter();
}
@Override
public int getCount() {
return 0;
}
@Override
public Object getItem(int position) {
return null;
}
@Override
public long getItemId(int position) {
return 0;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
return null;
}
@Override
public Filter getFilter() {
return null;
}
}
logcat的
Error:(84, 30) error: constructor ValueAdapterEn in class ValueAdapterEn cannot be applied to given types;
required: no arguments
found: ArrayList<String>,TwoFragment
reason: actual and formal argument lists differ in length
問題可能在'這個'
您的ValueAdapterEn構造函數沒有采用上下文:
你必須像下面那樣實例化你的上下文;
public class ValueAdapterEn extends BaseAdapter implements Filterable {
private Context context;
public ValueAdapterEn(ArrayList<String> English_List, Context context){
this.context = context ;
}
......
}
而不是this
你必須傳遞context
或getActivity()
我還沒有被允許評論,但我想那里的適配器需要一個上下文,你試圖在第二個參數中傳遞。 片段不是有效的上下文。 使用getActivity()
代替this
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.