2012-03-14 4 views
0

У меня есть этот класс: public class HeaderView extends RelativeLayout implements OnClickListener, ProgressBarListenerAndroid - Класс расширения RelativeLayout (onResume)

В каждой деятельности, это HeaderView показано, как я положил его в макете XML. Теперь я хочу, чтобы иметь возможность реализовать onResume в своем HeaderView. Когда я запускаю Activity, вызывается onCreate и заголовок HeaderView рисует то, что мне нужно наверху, но если я нажму обратно, моя активность вызовет onResume, и мой HeaderView не будет воссоздан, и старые значения все равно будут там. Как я могу реализовать onResume в своем HeaderView или что-то похожее, чтобы воссоздать HeaderView !?

Заранее благодарен!

ответ

1

Вы не можете вызывать onResume в классе HeaderView, так как это метод обратного вызова класса Activity и классов, расширяющих класс Activity.
Итак, в классе onResume вашего класса Activity вызовите метод класса HeaderView примерно как refreshView(), а затем ваше представление может быть обновлено.

Отредактированный раздел:

Вы можете сделать класс BaseScreen, распространяющийся Activity и реализовать это в своем onResume.
Теперь распространите этот класс во всех своих действиях, а не на класс Activity.
Это приведет к запуску refreshView() каждый раз, когда onResume называется вам, вам больше не нужно определять его в каждом классе активности вашего кода.

+0

Мне нужно сделать это тогда в каждом действии, есть ли общий способ реализовать этот refreshView() во всех активах без вызова refreshView(); в каждом onResume. Может быть, в каком-то файле XML !? – Carnal

+0

Mate .. этот refreshView работает только тогда, когда im создает активность, а не при возобновлении (при обратном нажатии). Это две картины, которые я хочу изменить! Любая идея почему? refreshView - это статический метод. – Carnal

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