Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 8197831
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 7, 20262026-06-07T05:49:18+00:00 2026-06-07T05:49:18+00:00

I try to get all subviews using this method but when i run the

  • 0

I try to get all subviews using this method but when i run the application, i have a message sent to deallocated instance error.

subviewsArray = self.view.subviews;
for (int i=0; i <subviewsArray.count; i++) {
    UIView *subview = [subviewsArray objectAtIndex:i];
    if (subview.tag >= 0) {
        [subview removeFromSuperview];
    }
}

And in my .h

@property (nonatomic, strong) NSArray *subviewsArray;
  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-07T05:49:19+00:00Added an answer on June 7, 2026 at 5:49 am

    Change your loop code to this :

    for (int i=subviewsArray.count - 1; i >= 0; --i) {
        UIView *subview = [subviewsArray objectAtIndex:i];
        if (subview.tag >= 0) {
            [subview removeFromSuperview];
        }
    }
    

    The Reason you are getting this issue is because, as your loop goes ahead from 0 to say 10th(assuming last) view, you start removing them from parent view, and so the count also changes and so the indexes of the remaining views.

    In the end you end up trying to remove a view and send it a message removeFromSuperview, which is already deallocated, all because of change in the index.
    better go reverse, last index to first.

    I am surprised, why you didn’t get index out of bound exception.

    not just here, in general whenever you traverse through a collection based on index and try removing elements, you will always face this issue.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I am using Exchange Web Services to try to get a list of all
I try to generate title in all levels of the officers but I get
hi i have the following code below, where i try to get all the
I try to get all html attributes but getting only one encapsilating others my
I try to get all date/time format pattern in GWT, using DateTimeFormat.PredefinedFormat to get
I try to get all user photo by using FQL (Facebook C# SDK, ASP
I try to get all table names for all databases. But GetSchema(Tables) returns names
I try to get all the members of my domain - using dsget group
I try to get all WPF window controls collections. In other words i try
i am try to get all links from webpage with Html Agility Pack, after

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.