• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: indexing of objects in a subview array
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: indexing of objects in a subview array


  • Subject: Re: indexing of objects in a subview array
  • From: Mike Abdullah <email@hidden>
  • Date: Wed, 10 May 2006 23:39:25 +0100

OK, fair enough, although I stand by my point that it really shouldn't ever matter to you at what index a subview is. To be honest, NSView probably ought to use an NSSet instead.

However, looking at your code I can see no reason why you should be encountering this, although I do have a couple of thoughts:

1. How many times have you tested each? There's no reason why the loading of the nib may not be different each time

2. Are you sure that all your subviews don't have a tag of 15? It's just the sort of mistake I might make, and it would certainly explain the result!

Mike.

On 10 May 2006, at 19:05PM, Boyd Collier wrote:

Mike,

Yes, I realized this. What strikes me as strange, however, is that the order appears to change when the contents of the nib are exactly the same, both forms start with NSArray *subviewArray = [ _groupsNibView subviews]; and the rest of my code (not shown) is otherwise identical.

Thanks for taking the time to reply.
Boyd


On May 10, 2006, at 9:36 AM, Mike Abdullah wrote:

I don't think there's any guarantee about the ordering of subviews in a view. They're just subviews, their order as such shouldn't matter.

Mike.

On 10 May 2006, at 01:06AM, Boyd Collier wrote:

In attempting to better understand subviews, I tried two alternative forms of what would seem to be doing the same thing (see below). In the nib containing the subviews there are 6 items, and in code not shown, the 2 forms agree in this regard. However, the first form indicates the item whose tag is 15 is the last item in subviewArray (that is, i = 5), while the second form indicates that this item is the first item in the array (that is, i = 0). No other changes were made in my code, nor was the nib file altered. Why would the ordering of objects in subviewArray be different?

[Please understand that I'm just trying to understand what seems to be an anomaly. I mention that to avoid anyone feeling they need to scold me for not using an iterator or for looking at tags.]

Boyd


// FIRST FORM NSArray *subviewArray = [ _groupsNibView subviews];

		int i = [subviewArray count];
		NSLog(@"number of items in groups subview = %i", i);

		while (i)
		{
			i--;
			if ( [[subviewArray objectAtIndex:i] tag] == 15);
				break;
		}
		NSLog(@"the index of the object is %i", i);
		

// SECOND FORM

NSArray *subviewArray = [ _groupsNibView subviews];
NSLog(@"number of items in groups subview = %i", [[ _groupsNibView subviews] count] );
int i = 0;
while (i < [subviewArray count])
{
if ( [[subviewArray objectAtIndex:i] tag] == 15);
break;

i++;
}
NSLog(@"the index of the object is %i", i);



_______________________________________________ Do not post admin requests to the list. They will be ignored. Cocoa-dev mailing list (email@hidden) Help/Unsubscribe/Update your Subscription: This email sent to email@hidden
  • Follow-Ups:
    • Re: indexing of objects in a subview array SOLVED
      • From: Boyd Collier <email@hidden>
References: 
 >indexing of objects in a subview array (From: Boyd Collier <email@hidden>)

  • Prev by Date: Re: object type testing
  • Next by Date: Re: Why does NSImageView Mask the Drop Zone of a Subview
  • Previous by thread: indexing of objects in a subview array
  • Next by thread: Re: indexing of objects in a subview array SOLVED
  • Index(es):
    • Date
    • Thread