2015-10-14 5 views
0

У меня есть фрагмент, и я хочу загрузить некоторые данные с сервера в метод oncreatView.обновить представление моего фрагмента после завершения асинтассы

после запроса и ответа от сервера. Я хочу обновить фрагмент. Просмотр, если ответ asynctask был нулевым. Это означает, что мне нужно изменить метод onCreateView() моего фрагмента.

@Override 
public View onCreateView(final LayoutInflater inflater, final   
ViewGroup container, Bundle savedInstanceState) { 

fView = inflater.inflate(R.layout.fr_booklist, container, false); 
AsyncTask<String, String, String> p = new GetService(url, new ServiceCallback() { 
     @Override 
     public void onTaskComplete(String result, int status) { 

      Request r = gson.fromJson(result, Request.class); 
      if(r!=null){ 
       //do my jobs 
      }else{ 
       //I want to set another view for fragment if here happend 
      } 
return fView; 

} 

мольбы мне помогают!

+0

и в чем проблема? – Blackbelt

+0

Я хочу создать другое представление и показать его как просмотр фрагмента –

ответ

1

после запроса и ответа от сервера Я хочу, чтобы обновить фрагмент View, если ответ AsyncTask был NUL

самый простой способ, чтобы иметь оба представления в макете вы надуть в вашем onCreateView, и когда ответ приходит, вы меняете свою видимость в соответствии с ним. Имейте в виду, что вы должны изменить свою видимость на UI Thread. Если вы не хотите, чтобы оба вида отображались в одном макете, вы можете использовать надувной элемент, чтобы получить объект View, который хотите добавить, и использовать fView.addView(), чтобы добавить его. Также здесь addView должен работать на UI Thread

Смежные вопросы