2014-12-01 2 views
0

Так вот сделка ..Inter связь фрагмента в ActionBarActivity реализация TabListener и ViewPager

У меня есть ...

public class HomeActivity extends ActionBarActivity implements ActionBar.TabListener 

и два фрагмента, которые являются частью закладок HomeActivity:

public class Fragment1 extends Fragment 

и

public class Fragment2 extends Fragment 

Вот код, который добавляет эти фрагменты в закладки:

list = new ArrayList<Fragment>(); 
list.add(Fragment1.newInstance("SomeString")); 

Extra Info: Fragment1 имеет AsyncTask, который загружает данные в формате JSON, разбирает его в ArrayList и передает его на операцию через интерфейс.

Затем вызывается адаптер и использует его методы, такие как getItem() и getPosition() и т. Д. ... и добавляет их. Теперь ясно, что нет fragmentTransaction(), поэтому мы не можем установить теги или идентификаторы. Теперь в документации по android говорится, что вам нужно указать getFragmentById() ИЛИ getFragmentByTag(), а затем вызвать фрагмент someUpdatingMethod(), чтобы обновить фрагмент с помощью Activity.

МОЙ ВОПРОС:

это someUpdatingMethod() в основном должен пройти через ArrayList из customObjects, извлекать информацию и добавить маркеры на GoogleMap. Это нужно сделать в потоке пользовательского интерфейса. Должен ли я просто назвать типичный

new Handler(Looper.getMainLooper()).post(new Runnable(){ 
      @Override 
      public void run() { 
       //Add markers Code Goes Here.... 
      }}); 

Или есть лучший способ сделать это?

P.S .: Я не хочу «просто выполнять работу», потому что да, это работает. Я пытаюсь найти лучшие практики. Спасибо, очень!

ответ

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