我以前用它来从数据库下载数据。现在我试图在选项卡式Activity中使用相同的片段,但它在Context处显示错误。我尝试了很多,但我找不到任何解决方案,希望有人能帮助我。这是错误发生的屏幕截图:
片段
Property 'aliveValues' does not exist on type '{ alive: any[]; destroyed: any[]; }
下载
package com.custardpine.v_guide.movie;
import android.os.Bundle;
import android.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ListView;
import com.custardpine.v_guide.R;
public class Trending extends Fragment{
final String url = "http://192.168.43.51/proj/trending.php";
ListView lv;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_movie_trending, container, false);
lv = (ListView) rootView.findViewById(R.id.mves_list);
DownloaderMovies d= new DownloaderMovies(Trending.this,url,lv);
d.execute();
return rootView;
}
}
答案 0 :(得分:0)
您收到此错误是因为(与Activity不同)Fragment不是Context。但是在您的片段中,您可以使用getContext()
来获取所需的上下文。
而不是
DownloaderMovies d= new DownloaderMovies(Trending.this,url,lv);
你必须使用
DownloaderMovies d= new DownloaderMovies(getContext(),url,lv);
并将DownloaderMovies的构造函数更改为
public DownloaderMovies(Context c, String url, ListView lv) {
// ...
}