title: Should I update UI elements from OnPostExecute of AsyncTask or not?
body: <p>In my android application, I want to strictly follow the Android guidelines. So after executing the <code>AsyncTask</code>, I have 2 options to update the UI with the results. </p>
  
  <ol>
  <li>I can either send the results back the main thread using a call-back listener and update the UI from there.</li>
  <li>I can also pass a reference of the desired UI elements to <code>AsyncTask</code> and update these elements in <code>onPostExecute</code>.</li>
  </ol>
  
  <p>So, which approach is better and why?</p>