Sáng nay, Xcode 9.0 (9A235) hiển thị một hộp Auto Complete mới / lạ, hoàn toàn không giống như trước đây. Làm cách nào để có được hộp tự động hoàn thành đầy đủ để tính năng tự động hoàn thành trông giống như cách nó thường làm?
Sáng nay, Xcode 9.0 (9A235) hiển thị một hộp Auto Complete mới / lạ, hoàn toàn không giống như trước đây. Làm cách nào để có được hộp tự động hoàn thành đầy đủ để tính năng tự động hoàn thành trông giống như cách nó thường làm?
Câu trả lời:
Thử:
Xóa thư mục DỮ LIỆU ĐÃ BỊ CHIA SẺ dường như đã khắc phục được sự cố của tôi. Cảm ơn bài đăng này: swift println () không hiển thị các tùy chọn tự động hoàn thành trong khi ghi mã
Những điều nên thử:
Chạy lệnh này trong thư mục dự án nếu bạn sử dụng cocoapods:
rm -rf ~/Library/Caches/CocoaPods;
rm -rf Pods; rm -rf ~/Library/Developer/Xcode/DerivedData/*;
pod deintegrate; pod setup; pod install;
Làm sạch dữ liệu được lưu trong bộ nhớ đệm
Làm sạch dự án -> Cmd + Shift + K
Làm sạch Thư mục Xây dựng -> Cmd + Shift + Option + K
Nếu bạn bỏ qua bước một:
Xóa dữ liệu có nguồn gốc
Xcode Preferences
-> Locations
->
Biểu tượng mũi tên Đưa bạn đến DerrivedData
-> Xóa thư mục
Kiểm tra các nguồn biên dịch trong giai đoạn xây dựng của bạn.
Mọi .swift
và .m
tệp trong dự án phải nằm trong danh sách này hoặc nó sẽ không tự động hoàn thành trong các tệp đó.
Tối ưu hóa Trình chỉnh sửa của bạn:
Sử dụng fileprivate trên mọi thuộc tính và chức năng của lớp mà bạn có thể để giảm phạm vi công việc của Trình biên dịch cho mỗi mục.
Viết mã mô-đun / OOP để bạn có ít mã hơn để trình biên dịch đọc.
Tránh sử dụng Loại sai khi kết quả là một phép tính phức tạp và cố gắng chia các phép tính phức tạp thành các let this = smallerOperation
câu lệnh
Phiên bản Xcode 11.0 (11A420a)
Tôi đã thử giải pháp từ Lal Krishna cho Xcode V11.0. Nó hoạt động một vài lần nhưng sau đó tôi không có kết quả.
Tôi đã tìm thấy một giải pháp. Bạn phải xóa hai tệp:
Giải pháp đó giúp tôi bây giờ. Có thể hữu ích cho người khác 😉
Điều này có thể xảy ra khi tệp không phải là thành viên của Target. Mở tệp mà tính năng tự động hoàn tất không hoạt động và hiển thị tab "Tiện ích" ở trên cùng bên phải của Xcode (màu xanh lam trong ảnh chụp màn hình bên dưới).
Đảm bảo Mục tiêu của bạn (thường là tên ứng dụng của bạn) được chọn. Tính năng Tự động hoàn thành sẽ hoạt động gần như ngay lập tức mà không cần khởi động lại Xcode, dọn dẹp hoặc xóa Dữ liệu gốc.
Nếu nó đã được chọn, hãy đảm bảo bỏ chọn và kiểm tra lại lần nữa. Đối với tôi, nó đã thành công.
Tôi đang sử dụng Xcode 10.2 và tôi gặp vấn đề tương tự.
Câu trả lời này từ axel đã giúp tôi sửa chữa.
Dù sao, tôi sẽ mô tả thêm một chút:
YourProject.xcodeproj
bằng cách nhấp với Nhấp chuột phải và mởShow Package Contents
xcuserdata
và xóa của bạnyouruser.xcuserdatad
Nếu bạn cũng có xcworkspace
(nếu bạn đã có bất kỳ vỏ cài đặt) sau đó thực hiện bước 3 & 4, nếu không thì chỉ cần bỏ qua bước 3 & 4:
YourProject.xcworkspace
bằng cách nhấp với Nhấp chuột phải và mởShow Package Contents
Đi đến xcuserdata
và xóa của bạnyouruser.xcuserdatad
Thoát Xcode
rm -rf ~ / Library / Developer / Xcode / DerivedData
Điều này cũng có thể xảy ra nếu bạn đặt tên tệp của mình thừa. Ví dụ,
Data.swift
Data.swift
Việc xóa tệp khỏi Mục tiêu Kiểm tra đã khắc phục được sự cố của tôi.
Hãy thử làm điều này:
Chọn tệp >> kiểm tra xem tệp có được thêm vào mục tiêu UITesting hoặc UnitTesting hay không (Người kiểm tra tệp -> Tư cách thành viên mục tiêu) . Nếu vậy, hãy bỏ chọn hai mục đó và đảm bảo chỉ chọn mục tiêu dự án. Sau đó, xây dựng và thử nếu tính năng tự động hoàn thành hoạt động tốt.
Điều này đã làm việc cho tôi. Hy vọng nó sẽ giúp một ai đó.
Sau một thời gian dài tìm kiếm, cuối cùng tôi đã khắc phục được sự cố cho mình. Trong Xcode> Tùy chọn> Chỉnh sửa văn bản, trong "Hoàn thành mã", tôi đã chọn "Sử dụng phím Escape để hiển thị đề xuất hoàn thành" vì một số lý do. Ngay sau khi tôi bỏ chọn hộp này, tự động hoàn thành đã hoạt động như một sự quyến rũ, thậm chí không cần khởi động lại Xcode! (Xcode 10)
Đây là một chút giải pháp nhưng hiệu quả.
Làm sạch dự án ... Command + Shift + K
Xóa thư mục xây dựng ... Command + Shift + Options (Alt) + K
Xóa dữ liệu dẫn xuất cho dự án ... Điều này có thể được thực hiện với sự trợ giúp của liên kết này:
Đóng XCode.
Sau khi hoàn thành việc xây dựng, Các đề xuất sẽ trở lại. Tôi đã thử nó hai lần.
Cập nhật:
Đôi khi sự cố có thể đơn giản như tên tệp trùng lặp. Kiểm tra kỹ xem có bất kỳ tên tệp mới nào do bạn thêm vào có xung đột với các tệp cũ hơn không.
Chỉ mất một ngày cố gắng giải quyết cơn ác mộng tự động hoàn thành của Xcode (9.2). Việc xóa dữ liệu có nguồn gốc dường như hoạt động trong thời gian ngắn sau đó mọi thứ được hoàn nguyên. Khởi động lại, v.v. và các voodoo được đề xuất khác không tạo ra sự khác biệt.
Tôi đã từ bỏ và tải xuống bản dùng thử 30 ngày của AppCode từ Jet Brains. Tự động hoàn thành hoạt động tốt ở đó và điều này có thể trùng hợp nhưng sau đó nó bắt đầu hoạt động trở lại trong dự án của tôi trong Xcode. Không thể đảm bảo rằng nó sẽ tiếp tục hoạt động ...
Nó có vẻ là tệp cụ thể trong trường hợp của tôi (Xcode 9.2) Đối với tôi, cách khắc phục là:
Cuối cùng sau 3 giờ thử mọi thứ - tính năng tự động hoàn thành hoạt động như bình thường.
Vấn đề chủ yếu là do thiếu vị trí của một số tệp trong trình điều hướng dự án (lỗi xây dựng)
Project Navigator
ngănHoặc bạn có thể:
Hi vọng điêu nay co ich
Xcode 11.3, macOS catalina
process parsecd đạt 100% cpu nên kill nó giúp mình với
Đối với tôi, sự cố đã xảy ra khi tôi loại bỏ tất cả các thay đổi của một tệp (trong Kiểm soát nguồn> Cam kết), việc này đã xóa tệp một cách hiệu quả. Đây là những gì tôi muốn và tôi nghĩ rằng tệp và tất cả các tham chiếu đến nó cũng sẽ bị xóa.
Tuy nhiên, vẫn có một tham chiếu đến tệp (được hiển thị màu đỏ) trong trình điều hướng Dự án. Việc xóa tệp (hiện không tồn tại) trong trình điều hướng Dự án đã đưa tính năng tự động hoàn thành trở lại một cách kỳ diệu.
Không giúp ích gì cho việc dọn dẹp, xóa dữ liệu có nguồn gốc, v.v. Tôi chỉ nhận ra tệp đã xóa vẫn hiển thị khi tôi cố gắng xây dựng dự án của mình, tất nhiên là không thành công vì nó không thể tìm thấy tệp đó.
Hy vọng điều này sẽ giúp ai đó tiết kiệm được 30 phút :)
Trường hợp của tôi có thể quá cụ thể để trợ giúp, nhưng nó có thể cung cấp cho ai đó ý tưởng về cách giải quyết lỗi tự động hoàn thành bị hỏng. Xcode 10.2.1.
Trong trường hợp của tôi, tính năng tự động hoàn thành đã ngừng hoạt động hoàn toàn và những câu trả lời khác không có trong số này đã giúp tôi. Ngoài ra, quạt trên máy tính có thể nghe thấy to hơn cho thấy có thứ gì đó đang hoạt động quá mức (không có ứng dụng nào khác đang chạy), cần lưu ý rằng tôi đang chỉnh sửa trên máy tính xách tay MacBook Pro. Nó dường như được liên kết với việc trình soạn thảo đang vật lộn để phân tích cú pháp phương trình tôi đã viết:
switch mtype {
case .indeterminate:
newPosition.x = (frame.width - mainFigureText.frame.width) / 2
case .right:
newPosition.x = (((frame.width / 2) - mainFigureText.frame.width) / 2) + (frame.width / 2)
case .left:
newPosition.x = (((frame.width / 2) - mainFigureText.frame.width) / 2)
}
Tôi đang tìm cách tạo hiệu ứng cho chế độ xem văn bản sang trái, phải hoặc ở giữa tùy thuộc vào prefs của người dùng. Các newPosition
là một CGPoint
mà văn bản sẽ động đến. Dù sao thì, tôi đã chia nhỏ các phương trình ra và đột nhiên tính năng tự động hoàn thành bắt đầu hoạt động và quạt im lặng! Tôi đã có thể tạo lại sự cố cụ thể này nhiều lần bằng cách nhập lại mã trên và sau đó thay thế nó bằng:
let halfFrameWidth: CGFloat = frame.width / 2
let middleLeft = (halfFrameWidth - mainFigureText.frame.width) / 2
switch doseType {
case .right:
newPosition.x = middleLeft + halfFrameWidth
case .left:
newPosition.x = middleLeft
default:
newPosition.x = (frame.width - mainFigureText.frame.width) / 2
}
Tôi muốn thêm một giải pháp nữa vào đống giải pháp, bởi vì nó là giải pháp duy nhất phù hợp với tôi và không tìm thấy ở đây.
Xcode thường đi kèm với hai cấu hình xây dựng mặc định cho mọi dự án. Release
& Debug
. Tôi có thêm một cái cho các bài kiểm tra đơn vị của tôi được gọi là Testing
. Trong Xcode 10.1, 10.2, 10.3 và 11 beta, hệ thống xây dựng mới dường như không thích nó và sẽ chỉ tự động hoàn thành nếu bạn sử dụng Release
hoặc Debug
. Bất kỳ cấu hình bản dựng tùy chỉnh nào đều phá vỡ quá trình tự động hoàn thành trong dự án hỗn hợp (nhanh chóng + objc) với các thử nghiệm đơn vị.
Liên kết này đã giúp tôi. Mở Cài đặt bản dựng và điền vào các đường dẫn tìm kiếm khung. Xem hình ảnh bên dưới.
Tôi đã gặp sự cố với 100% không hoạt động tự động hoàn thành, không có văn bản nào ở đây giúp ích. Một điều tôi nhận thấy - nó đã bị hỏng ngay sau khi thêm một số thực thể vào tệp .xcdatamodel, có định nghĩa lớp codegen theo mặc định.
Vì vậy, tôi không ngạc nhiên khi không sử dụng codegen kiểu cũ (và tất nhiên là tạo các lớp) đã khắc phục được sự cố ngay lập tức, ngay cả khi không khởi động lại xcode.
Nếu bạn gặp vấn đề với sự hoàn thành kỳ lạ / tự động hoàn thành / intellisense (không hiển thị nội dung mặc định như các phương thức đại biểu và giao thức nguồn dữ liệu), chỉ cần thay đổi mục tiêu của bạn (ví dụ: từ trình mô phỏng iPhone 8 sang thiết bị thực), xây dựng dự án và chuyển trở lại mục tiêu ban đầu của bạn .
Tương tự với các vấn đề với Trình tạo giao diện (bảng phân cảnh) không hiển thị bất kỳ thứ gì, nhưng chỉ "không có gì được chọn" bất cứ khi nào bạn chọn bất kỳ phần nào của chế độ xem. Chỉ cần chuyển sang Xib / Storyboard khác (hoặc thậm chí tạo mới), kiểm tra xem nó có hoạt động ở đó không và chuyển trở lại.
Những cách giải quyết này phù hợp với tôi trong cả hai trường hợp (có cả hai vấn đề trong một ngày với một dự án trên Xcode 10.2.1). Từ những gì tôi đã thấy trên khắp các diễn đàn internet, có vẻ như đây là những lỗi chưa bao giờ được sửa kể từ Xcode 6.x trở lên.
Chúc mừng!
Trong trường hợp của tôi (Xcode 11.1), Điều đó đã xảy ra khi tôi dừng tự động lập chỉ mục Xcode bằng lệnh nàydefaults write com.apple.dt.Xcode IDEIndexDisable -bool true
.
Vì vậy, tôi cuộn lại nó với defaults write com.apple.dt.Xcode IDEIndexDisable -bool false
. sau đó khởi động lại macOS và chạy lại Xcode.
Gặp sự cố tương tự với Xcode 11.3. Không có gì ở trên không giúp được gì, hóa ra là tôi đã xây dựng lỗi. Chỉ cần sửa lỗi bản dựng và tính năng tự động hoàn thành sẽ hoạt động trở lại.