Home > DeveloperSection > Forums > How do I tell if a UIView is visible and on screen?
Mikki Halpin
Mikki Halpin

Total Post:23

Posted on    August-17-2015 12:06 AM

 iPhone iPhone  Ios  Objective C 

 1 Reply(s)
 977  View(s)
Rate this:

If I have a UIView (or UIView subclass) that is visible, how can I tell if it's currently being shown on the screen (as opposed to, for example, being in a section of a scroll view that is currently off-screen)?


To maybe give you a better idea of what I mean, UITableView has a couple of methods for determining the set of currently visible cells. I'm looking for some code that can make a similar determination for any given UIView.

Tarun Kumar

Total Post:214

Posted on    August-17-2015 11:36 PM

I recently had to check whether my view was onscreen. This worked for me:

CGRect viewFrame = self.view.frame;

CGRect appFrame = [[UIScreen mainScreen] applicationFrame];


// We may have received messages while this tableview is offscreen

if (CGRectIntersectsRect(viewFrame, appFrame)) {

    // Do work here


Don't want to miss updates? Please click the below button!

Follow MindStick