Я использую Objective c и swift в моем проекте. При доступе к одной функции одноэлементного класса цели c в моем быстром классе она недоступна, в то время как другие функции доступны.
I am writing my code below for both objective-c (.m,.h) and for swift classes.
Код для .h:
@property (nonatomic, readwrite) NSString* apiKey;
@property (nonatomic, readwrite) UIColor* panelColor;
+(id)sharedTools;
-(void)showProgressHud:(UIView *)view;
-(void)setApiKey:(NSString *)apiKey;
-(void)setPanelColor:(UIColor *)panelColor;
-(void)showProgressIndicator;
-(void)hideProgressIndicator;
-(void)hideProgressHud;
-(void)updateDeviceInformationWithDeviceToken:(NSString*)devicetoken;
- (void)prepareDeviceInformation;
-(void)getCurrentLocation;
Код для .m:
@implementation Constants
@synthesize location_Manager;
+ (id)sharedTools {
static Constants *tools = nil;
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
tools = [[self alloc] init];
});
return tools;
}
- (void)setApiKey:(NSString *)apiKey {
if (apiKey) {
_apiKey = apiKey;
}
else {
_apiKey = @"";
}
}
- (void)setPanelColor:(UIColor *)panelColor {
if (panelColor) {
_panelColor = panelColor;
}
}
В .swift:
ref?.observe(DataEventType.value, with: { (snapShot:DataSnapshot) in
let apiKeySnapshotResponse = snapShot.value as! [String:Any]
if NSRUtilities.isNilOREmptyDictionary(apiKeySnapshotResponse) == false {
let apiKey = "\(String(describing: apiKeySnapshotResponse["key"]))"
(Constants.sharedTools()as AnyObject).setApikey(apiKey:apiKey)
OUSTConnectionManager.shareInstance().setApikey(apiKey:apiKey)
Пока эта функция работает нормально в классе swift.
func configuringCourses(){
weak var weakSelf = self
(Constants.sharedTools() as AnyObject).showProgressIndicator()
let userKey = self.signInUserDetails["studentKey"] as! NSNumber
let userCourseKey =
IMERLANDINGPAGE_URL.replacingOccurrences(of: "{userKey}", with: String(describing: userKey))
let courseURL = "\(FIREBASE_URL)\(userCourseKey)/course"
ref = Database.database().reference(fromURL: courseURL)
Помоги мне с этим.
П.С .: Доступны другие функции цели c.