在没有分配的情况下使用 class
Using class without alloc
我试图理解 JitsiMeet iOS 代码,我注意到他们已经初始化 class 而没有做这样的事情
[[JitsiMeetView alloc] setPropsInViews:[conferenceOptions asProps]]
相反,他们做到了
return [JitsiMeetView setPropsInViews:[conferenceOptions asProps]];
代码:https://github.com/jitsi/jitsi-meet/blob/master/ios/sdk/src/JitsiMeet.m#L117
JitsiMeetView 导入为
#import "JitsiMeetView+Private.h"
这是Jetsi Meet的界面在哪里
#import "JitsiMeetView.h"
@interface JitsiMeetView ()
+ (instancetype _Nullable)viewForExternalAPIScope:(NSString *_Nonnull)externalAPIScope;
+ (BOOL)setPropsInViews:(NSDictionary *_Nonnull)newProps;
@end
Link: https://github.com/jitsi/jitsi-meet/blob/master/ios/sdk/src/JitsiMeetView%2BPrivate.h
还有,我看不到JitsiMeetView+Private.m
。有人可以解释一下上述逻辑是如何工作的吗?对于 Jitsi?
他们还没有“初始化class”。如 +
所示,这是一个 class 方法。它是在 class 上调用的,而不是在 class.
的实例上调用的
+
表示是class方法,对class本身进行操作。
同时
-
表示是实例方法,操作对象
例如,
@interface MyClass ()
-(void)function1;
+(void)function2;
@end
function1 是一个实例方法。要调用函数 1,请使用此代码:
[[[MyClass alloc] init] function1];
function2 是一个 class 方法。要调用函数 2,请使用此代码:
[MyClass function2];
我试图理解 JitsiMeet iOS 代码,我注意到他们已经初始化 class 而没有做这样的事情
[[JitsiMeetView alloc] setPropsInViews:[conferenceOptions asProps]]
相反,他们做到了
return [JitsiMeetView setPropsInViews:[conferenceOptions asProps]];
代码:https://github.com/jitsi/jitsi-meet/blob/master/ios/sdk/src/JitsiMeet.m#L117
JitsiMeetView 导入为
#import "JitsiMeetView+Private.h"
这是Jetsi Meet的界面在哪里
#import "JitsiMeetView.h"
@interface JitsiMeetView ()
+ (instancetype _Nullable)viewForExternalAPIScope:(NSString *_Nonnull)externalAPIScope;
+ (BOOL)setPropsInViews:(NSDictionary *_Nonnull)newProps;
@end
Link: https://github.com/jitsi/jitsi-meet/blob/master/ios/sdk/src/JitsiMeetView%2BPrivate.h
还有,我看不到JitsiMeetView+Private.m
。有人可以解释一下上述逻辑是如何工作的吗?对于 Jitsi?
他们还没有“初始化class”。如 +
所示,这是一个 class 方法。它是在 class 上调用的,而不是在 class.
+
表示是class方法,对class本身进行操作。
同时
-
表示是实例方法,操作对象
例如,
@interface MyClass ()
-(void)function1;
+(void)function2;
@end
function1 是一个实例方法。要调用函数 1,请使用此代码:
[[[MyClass alloc] init] function1];
function2 是一个 class 方法。要调用函数 2,请使用此代码:
[MyClass function2];