从Objective-C迁移到Swift并删除已转换的Objective-C文件

时间:2018-05-26 15:24:47

标签: objective-c swift

如何删除Xcode项目中已迁移的Objective-C文件?函数main.m可以访问Swift函数,但是我必须保留已经转换为Swift等价的.h和.m文件吗?

我能够将Objective-C类转换为Swift类。然后我从main.m访问了Swift函数。

以下是.h和.m文件:

@interface SimpleClassObject:NSObject

-(void) IntVariableSent:(int)x;
-(int) MethodReturn: (int)y;

@end;

以下是.m文件

@implementation SimpleClassObject

-(void) IntVariableSent:(int)x
 {
     NSLog(@"The value of x = %d was passed into this Objective C method", x);
 }

-(int) MethodReturn: (int)y
{
    int multiply = 3;

    multiply *= y;
    NSLog(@"An integer was passed to MethodReturn of y = %d", y);

    return multiply;
}

@end

以下是Swift类:

class SimpleClassObject2: NSObject {
    func intVariableSent(_ x: Int) {
        print("The value of x = \(x) was passed into a Swift function")
    }

    @objc func methodReturn(_ y: Int) -> Int {
        var multiply: Int = 3
        multiply *= y
        print("An integer was passed to methodReturn of y = \(y)")
        return multiply
    }
}

以下是main.m

int main(int argc, const char * argv[])
{
    @autoreleasepool {
        int valueReturnedFromFunction;

        SimpleClassObject2 *swftObj = [[SimpleClassObject2 alloc]init];
        [swftObj passNothingReturnNothing];
        [swftObj intVariableSent:90];
        valueReturnedFromFunction  = (int)[swftObj methodReturn:80];
        printf("\n%d value using Swift class\n\n", valueReturnedFromFunction);
    }
    return 0;
}

1 个答案:

答案 0 :(得分:0)

我刚刚删除了与Xcode项目无关的Objective C文件。因此MikeIOSMike是正确的。感谢MikeIOSMike的回复