我有一个片段类,希望它像Facebook feed。它从远程SQL DB获取数据,并在运行时创建帖子的布局并将其显示在片段中。
有没有简便的方法?
我试图通过使用从片段调用的BackgroundTaskJobs
来做到这一点。
这是调用部分(从片段内部):
BackgroundTaskJobs backgroundTaskJobs= new BackgroundTaskJobs(getActivity());
backgroundTaskJobs.execute();
这是BackgroundTaskJobs的初始化:
public BackgroundTaskJobs(Context ctx){
this.ctx = ctx;
activity = (Activity) ctx;
}
在运行时,此初始化使我崩溃并出现以下错误:
FATAL EXCEPTION: main
Process: com.example.admin.tabbedproject, PID: 27095
java.lang.ClassCastException: android.app.ContextImpl cannot be cast to android.app.Activity
为了解决这个问题我该怎么办?
最佳答案
我找到了一种更简单的方法-我传递了View变量,并将其替换为Activity初始化。
分段:
BackgroundTaskJobs backgroundTaskJobs= new BackgroundTaskJobs(getActivity());
backgroundTaskJobs.execute();
BackgroundTaskJobs:
public BackgroundTaskJobs(Context ctx, View view){
this.ctx = ctx;
this.view= view;
}
当我需要此命令时:
recyclerView = (RecyclerView)activity.findViewById(R.id.recycler_view);
我改用这个:
recyclerView = (RecyclerView)view.findViewById(R.id.recycler_view);