Xcode 7.3 Syntax Highlighting and Code Completion issues with Swift

前端 未结 5 571
抹茶落季
抹茶落季 2020-12-23 20:34

I am having an extremely frustrating issue with XCode 7.3 (however, this issue has persisted since I installed XCode 7.2) and Swift code, and I am hoping others have had thi

5条回答
  •  [愿得一人]
    2020-12-23 21:00

    This might not be necessary anymore but i still want to post this:

    At the time of this post, the most recent version of cocoapods (1.0.0.beta.8) requires you to define pods for each Xcode target.

    In my case I had a class compile for the project target and for a testing target. I added a pod only to the main target, because of laziness.

    Now working in the code of class A I added the pod framework using import NAME and tried to use the classes of the framework. Xcode wouldn't highlight the particular code where I use the new classes, but compiling and running works fine. In the completion dialog the type of the variable was <>

    The way to resolve this issue: in the Podfile add the newly added pod to all targets, the class A is member of.

    Now Xcode finds the necessary frameworks for all targets and code highlighting works again.

    EDIT 1:

    A possible solution is defining a list of shared pods, like in my example:

    platform :ios, '8.4'
    use_frameworks!
    inhibit_all_warnings!
    
    def all_pods
        pod 'MPMessagePack'
        pod 'SwiftyDispatch'
        pod 'BFKit'
        pod 'Timepiece'
        pod 'Alamofire'
        pod 'AlamofireSwiftyJSON'
    end
    
    def testing_pods
        pod 'Quick'
        pod 'Nimble'
    end
    
    target 'App' do
        all_pods
    end
    
    target 'AppLogicTests' do
        all_pods
        testing_pods
    end
    
    target 'AppUITests' do
        pod 'RxTest'
        all_pods
        testing_pods
    end
    
    post_install do |installer|
        installer.pods_project.targets.each do |target|
            puts target.name
        end
    end
    

    This will add all pods to all targets and adding all testing pods to the targets. Next to these I added 'RxTest' to the AppUITests.

    (Chosen pods are examples of my projects, no advertising intended :-) )

提交回复
热议问题