NSView және NSImageView енін және биіктігін алыңыз

Менде NSView бар, NSViewде NSImageView бар

NSView бастапқы кодтарында

Мен жаздым:

NSImage *image = [[[NSImage alloc] initWithContentsOfURL:url] autorelease];
NSImageView *newImageView = nil;
newImageView = [[NSImageView alloc] initWithFrame:[self bounds]];
[newImageView setImage:image];
[newImageView setAutoresizingMask:NSViewWidthSizable | NSViewHeightSizable];

NSView және NSImageView енін және биіктігін оқу әдісі бар ма?

4

2 жауаптар

Кез келген көріністің өлшемі (NSView, NSImageView, т.б.) view.frame.size немесе view.bounds.size болып табылады. Екі жағдайда да бірдей NSSize құрылымы. Сіз келесі кодты жаза аласыз:

NSSize size = newImageView.frame.size;
NSLog(@"size: %@", NSStringFromSize(size));
NSLog(@"size: %f x %f", size.width, size.height);

Оны өзгерту үшін frame сипатын жаңарту қажет:

NSRect frame = view.frame;
frame.size = NSMakeSize(<#new width#>, <#new height#>);
view.frame = frame;
7
қосылды

- (NSRect) шектері әдісін қолданыңыз.

2
қосылды
Немесе frame әдісі.
қосылды автор Peter Hosey, көзі