Got confused about these 2 methods.
NSObject protocol has an isEqual: method.
NSObject implements NSObject protocol but it does not have isEqual:, instead it has an isEqualTo: method.
What's the magic behind the design? Or is the doc wrong?
Should I implement both methods in a derived class?
Post
Replies
Boosts
Views
Activity
I did searches on the Internet but could not find a definitive answer. The best thing I get is CGImageSourceCreateThumbnailAtIndex API function. But I don't know how create CGImageSource out of an NSImage object. Thanks for any suggestions.
I have a custom view that acts as a container for many NSImageViews that will be created dynamically on the fly.
When the container view is resized (by parent window), some new subviews may be created and added to the container view, or some subviews may be removed because they are not fit into a smaller view.
I have two ways to handle the 'disappearing' subviews. One way is to hide them, the other is to remove them from the container view.
My concern is that - Is there a (big) performance difference between the two methods? Which is better?
I have a need to tell if 2 images are different by unimportant details.
For example, one image is only slightly different than another because:
*) It is a little stretched
*) or it has 99% portion of another (only missing some pixels on borders)
I wonder if there is an efficient algorithm to achieve my goal. Any suggestions are welcome.
When I log in and start a Terminal window, a simple gcc command produces the following debug messages:
2022-07-15 13:52:41.470 xcodebuild[784:10833] Requested but did not find extension point with identifier Xcode.IDEKit.ExtensionSentinelHostApplications for extension Xcode.DebuggerFoundation.AppExtensionHosts.watchOS of plug-in com.apple.dt.IDEWatchSupportCore
2022-07-15 13:52:41.470 xcodebuild[784:10833] Requested but did not find extension point with identifier Xcode.IDEKit.ExtensionPointIdentifierToBundleIdentifier for extension Xcode.DebuggerFoundation.AppExtensionToBundleIdentifierMap.watchOS of plug-in com.apple.dt.IDEWatchSupportCore
Subsequent invoke of gcc does not produce these messages. How to avoid this small nuisance?
I once enabled locate (not location) service but now I want to disable/remove it. It's really not very helpful compared to spotlight.
What is the correct commandline?
I have a need to integrate icu (https://formulae.brew.sh/formula/icu4c#default) into one of my store apps. I'd like to know if this approach is supported by the app submission policies. Thanks.
I am a little hesitant to ask this question because it's been years, during which I hoped it's just a specific problem of my own computer or Xcode version.
I'm not sure if it's only me alone with this problem.
First time run of any playground project is extremely slow (after I open it); sometimes it just never runs with the build indicator circling forever).
This is true for objc or swift playgrounds, or different machines, different Xcode versions, different OS versions.
Can anyone help?
On my 27in monitor, the doc text is too small for reading. Is there any way to enlarge text size?
Maybe I should file a ticket to request for a new feature for this?
I'm not sure what I have missed in the new release, but I cannot set Standard Value in IB anymore like that I did for years.
The Standard Value is disabled in constraint dropdown list. If I clear the hardcoded value, "Standard" will appear but when I press ENTER, the old value comes back.
Is this a known bug or a new 'feature'?
I always get the following debug messages when I debug a simple test app:
2021-02-03 06:27:08.068287+0800 objcapp[4385:33065] Metal API Validation Enabled
2021-02-03 06:27:09.530861+0800 objcapp[4385:33767] Errors found! Invalidating cache...
2021-02-03 06:27:09.970280+0800 objcapp[4385:33767] Errors found! Invalidating cache...
2021-02-03 06:27:10.899920+0800 objcapp[4385:33065] VPA info: plugin is INTEL, AVD_id = 1080004, AVD_api.Create:0x112d415d7
2021-02-03 06:27:10.971477+0800 objcapp[4385:33065] VPA info: plugin is INTEL, AVD_id = 1080004, AVD_api.Create:0x112d415d7
2021-02-03 06:27:10.991057+0800 objcapp[4385:33065] VPA info: plugin is INTEL, AVD_id = 1080004, AVD_api.Create:0x112d415d7
This began a few versions ago of macOS updates/upgrades. Is there any way to get rid of these messages? They are really interfering my focus on coding and debugging.
I have the following code:@implementation NSWindow (Coordination)
- (NSPoint)convertPointFromScreen:(NSPoint)point
{
NSRect rect = NSMakeRect(point.x, point.y, 1, 1);
return [self convertRectFromScreen:rect].origin;
}I get a compiliation warning:Category is implementing a method which will also be implemented by its primary classI know Swift has builtin preprocessor directives to detect SDK version, but don't know how to do this in objc. Any suggestions?
My app observes NSWorkspaceActiveSpaceDidChangeNotification and set wallpaper on the active screen. But I see there is no way to distinguish between spaces on a screen. I'm not sure if I have read the docs thoroughly. I would like to know if it is possible to tell which space is active for the active screen.
I want to use NSTask to run a shell script that resides in Resouces directory. The script performs some operations on files in the app's Data directory.But I am concerned that Apple could refuse my app for some reasons. Can anyone confirm if this approach is safe. Thanks.