Dwi*_* Ji 12 java android web-services android-fragments android-fragmentactivity
我需要知道,在哪个片段回调方法中,我们应该调用一个Web服务,通过它返回片段Web服务之后不应再调用.
例如.我有一个片段类MyFragment.java
public class MyFragment extends Fragment {
@Override
public void onAttach(Activity activity) {
super.onAttach(activity);
}
@Override
public void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_layout, container,
false);
return rootView;
}
}
Run Code Online (Sandbox Code Playgroud)
我需要知道哪个回调方法我必须调用webservice来更新片段的UI.现在我从onCreateView方法调用Web服务.但我需要知道从片段调用Web服务的最佳方法是什么.
小智 9
如果我正确理解您的问题,您想从服务器获取一些数据,然后通知片段数据已准备好并重新绘制片段,这是正确的吗?根据这里的文件:
onCreate() - 系统在创建片段时调用它.在您的实现中,您应该在片段暂停或停止时初始化要保留的片段的基本组件,然后重新开始.
onCreateView() 当片段第一次绘制其用户界面时,系统会调用此方法.要为片段绘制UI,必须从此方法返回视图,该视图是片段布局的根.如果片段不提供UI,则可以返回null.
在应用程序的其他位置创建Fragment时,onCreate()将调用方法.当必须首次绘制片段时,调用onCreateView()并且此方法返回创建的视图.在你的情况下,你可能会使用以下内容:
onCreate,初始化所有这些数据(空容器),初始化适配器,然后执行AsyncTask.onCreateView,准备视图返回 - 适配器等所以现在,一旦AsyncTask完成,在onPostExecute它调用your_adapter.notifyDataSetChanged().这将重绘片段,因为将通知适配器数据已更改(从服务器获取).