【发布时间】:2023-09-17 05:50:02
【问题描述】:
你好,我想在我的 swift 类中使用这个方法,已经创建了标题,但我只能访问方法(setApiKey)。这是目标c中的代码
#import <Foundation/Foundation.h>
@class CLQResponseHeaders, CLQError;
@class CLQToken;
NS_ASSUME_NONNULL_BEGIN
@interface Culqi : NSObject
/**
* gets singleton object.
* @return singleton
*/
+ (Culqi *_Nonnull)sharedInstance;
+ (void)setApiKey:(NSString *_Nonnull)apiKey;
#pragma mark - Tokens
- (void)createTokenWithCardNumber:(NSString *_Nonnull)cardNumber
cvv:(NSString *_Nonnull)cvv
expirationMonth:(NSString *_Nonnull)expirationMonth
expirationYear:(NSString *_Nonnull)expirationYear
email:(NSString *_Nonnull)email
metadata:(NSDictionary * _Nullable)metadata
success:(void (^_Nullable)(CLQResponseHeaders *_Nonnull responseHeaders, CLQToken * _Nonnull token))success
failure:(void (^_Nullable)(CLQResponseHeaders *_Nonnull responseHeaders, CLQError * _Nonnull businessError, NSError * _Nonnull error))failure;
@end
NS_ASSUME_NONNULL_END
我的快速代码是
import Foundation
import UIKit
class RegisterController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
//THIS METHOD CALL SUCCESS
Culqi.setApiKey("")
}
}
更新:setApiKey 方法是可访问的,发生的情况是我无法调用方法“createTokenWithCardNumber”
【问题讨论】:
-
如果我的类是可访问的,会发生什么我不能访问这个方法(createTokenWithCardNumber)
-
@DacDevs 我想,这是您的实施 (.m) 文件代码。对?您需要将方法声明移动到 (.h) 头文件。
-
是的,在我的实现文件中是对的,这段代码在objective-c中用于执行该方法,但在swift中不调用
[[Culqi sharedInstance] createTokenWithCardNumber: }];
标签: ios objective-c swift xcode objective-c-swift-bridge