[英]failed to call Adapter method from fragment
我正在使用带有标签的片段。 我有两个片段: AddTask.java
和AddedTask.java
我有一个Adaper类Adapter.java
public class Adapter extends BaseAdapter {
Context context;
List<Reminder_Database> lists;
TextView title, date,time,note,date_edit,time_edit;
EditText title_edit,note_edit;
AddedTask addedTask;
int ids;
public Adapter(Context context, List<Reminder_Database> list, AddedTask addedTask) {
// TODO Auto-generated constructor stub
this.context=context;
this.lists=list;
this.addedTask=addedTask;
}
上面提到的代码是适配器。 现在,我要在第一个片段AddTask.java
中列出列表项的数量,但它返回null
。
我尝试过像
Adapter adapter=new Adapter(context,lists,addedTask);
adapter.getcount();
但它返回null
。
也许片段AddedTask
上下文返回null
。
请不要混淆AddTask
和AddedTask
。
我希望在AddTask
调用适配器的getCount()
,否则我希望在打开活动时从AddedTask
获得值。
不应该是这样吗
Adapter adapter=new Adapter(getActivity(),list,addedTask);
adapter.getcount();
其中list
是List<Reminder_Database>
类型的对象。
要从AddedTask
到AddTask
获得价值:
public class MainActivity extends Activity{
public int count;
}
首先在AddedTask
设置值
public class AddedTask extends Fragment{
....
((MainActivity)getActivity()).count = adapter.getcount();
}
在另一个Fragment
获取它:
public class AddedTask extends Fragment{
....
int count = ((MainActivity)getActivity()).count;
}
尝试这个。 这将起作用。
首先,您的参数不匹配
此->列表将不起作用,并且片段上下文应从活动中获取。
getActivity().getApplicationContext()
使用一些列表对象:
Adapter adapter=new Adapter(getActivity().getApplicationContext(),list,addedTask);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.