我有一个扩展Fragment的类(如下所示)。现在我需要我的类在创建对象时将视图返回到Other类。一切都工作正常,但我需要这个类在后台线程中做的事情。 我还使用了ASYNC任务,但是我无法使ASYNC任务返回视图。任何人都可以帮忙。??
MapFragment.java
public class MapsFragment extends Fragment
{
MapView map;
LayoutInflater inflater_;
ViewGroup container_;
View layout;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
{
inflater_=inflater;
container_=container;
super.onCreate(savedInstanceState);
layout = inflater.inflate(R.layout.fragment_maps, container, false);
map = (MapView) layout.findViewById(R.id.mapView);
return (LinearLayout) layout;
}
}
答案 0 :(得分:2)
我不知道为什么要将View传递给AsyncTask,但这是一种基本方法:
public class MyAsync extends AsyncTask<Void, Void, Void> {
private View view;
public MyAsync(View view) {
this.view = view;
}
@Override
protected Void doInBackground(Void... params) {
// Do something, but not with view
return null;
}
@Override
protected void onPostExecute(Void v) {
// You can alter view here or in the other methods with UI access
view.setVisibility(View.GONE);
}
}
如果此方法不适用于您想要做的事情,您也可以使用自己的回调。