Как лучше всего проверить, виден ли вид в окне?

Какой лучший способ проверить, виден ли вид в окне?

У меня есть CustomView, который является частью моего SDK, и любой может добавить CustomView к своим макетам. Мой CustomView предпринимает некоторые действия, когда он периодически виден пользователю. Поэтому, если представление становится невидимым для пользователя, ему необходимо остановить таймер, а когда оно снова станет видимым, оно должно возобновить свой ход.

Но, к сожалению, нет определенного способа проверить, становится ли мой CustomView видимым или невидимым для пользователя. Есть несколько вещей, которые я могу проверить и послушать:

onVisibilityChange //it is for view's visibility change, and is introduced in new API 8 version so has backward compatibility issue
onWindowVisibilityChange //but my CustomView can be part of a ViewFlipper's Views so it can pose issues
onDetachedFromWindows //this not as useful
onWindowFocusChanged //Again my CustomView can be part of ViewFlipper's views.
Так что, если кто-то сталкивался с такими проблемами, пожалуйста, пролите немного света.
22
задан miku 4 September 2010 в 23:00
поделиться