Not every time, but sometimes. I have installed only one version of Xcode.I think it appears after force quit from Xcode. For some reason it sometimes freezes and doesn't work.
Post
Replies
Boosts
Views
Activity
Thank! It has already reassured me!
Thanks guys!I understand that my last questions are not for you. The main thing is that I got an answer to my most important question - is this normal or is it a hacker program? If other users also have this message and install these additional components, then everything is fine and it can be continue to work.
The fact is that in this line of code - label1.text = nil or label2.text = nil - you do not remove the attributedText, so the strikethroughStyle remains.
Sorry, I saw your message just today.
Yes, of course, this is the code.
// MARK: - Saving Data to Archive File
// 1. Make a path to save and upload data.
static let documentsDirectory = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first!
static let archiveUrl = documentsDirectory.appendingPathComponent("classes").appendingPathExtension("plist")
// 2. Encoding and saving data.
static func saveToFile(classes: [ClassUnit]) {
let propertyListEncoder = PropertyListEncoder()
let encodeClasses = try? propertyListEncoder.encode(classes)
try? encodeClasses?.write(to: archiveUrl, options: .noFileProtection)
}
// 3. Deconding and load data.
static func loadFromFile() -> [ClassUnit] {
let propertyListDecoder = PropertyListDecoder()
var classes = [ClassUnit]()
if let retrivedClassesData = try? Data(contentsOf: archiveUrl), let decodeClasses = try? propertyListDecoder.decode(Array<ClassUnit>.self, from: retrivedClassesData) {
classes = decodeClasses
}
return classes
}
You can see more about this method in Apple's textbook called App Development with Swift. It can be found in iBookStore.
Thank you for your answer!
| Do you mean first time after download ?
Yes, first time after download.
In these two files I have not changed anything in the code
import UIKit
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
// Override point for customization after application launch.
return true
}
// MARK: UISceneSession Lifecycle
func application(_ application: UIApplication, configurationForConnecting connectingSceneSession: UISceneSession, options: UIScene.ConnectionOptions) -> UISceneConfiguration {
// Called when a new scene session is being created.
// Use this method to select a configuration to create the new scene with.
return UISceneConfiguration(name: "Default Configuration", sessionRole: connectingSceneSession.role)
}
func application(_ application: UIApplication, didDiscardSceneSessions sceneSessions: Set<UISceneSession>) {
// Called when the user discards a scene session.
// If any sessions were discarded while the application was not running, this will be called shortly after application:didFinishLaunchingWithOptions.
// Use this method to release any resources that were specific to the discarded scenes, as they will not return.
}
}
import UIKit
class SceneDelegate: UIResponder, UIWindowSceneDelegate {
var window: UIWindow?
func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) {
// Use this method to optionally configure and attach the UIWindow `window` to the provided UIWindowScene `scene`.
// If using a storyboard, the `window` property will automatically be initialized and attached to the scene.
// This delegate does not imply the connecting scene or session are new (see `application:configurationForConnectingSceneSession` instead).
guard let _ = (scene as? UIWindowScene) else { return }
}
func sceneDidDisconnect(_ scene: UIScene) {
// Called as the scene is being released by the system.
// This occurs shortly after the scene enters the background, or when its session is discarded.
// Release any resources associated with this scene that can be re-created the next time the scene connects.
// The scene may re-connect later, as its session was not neccessarily discarded (see `application:didDiscardSceneSessions` instead).
}
func sceneDidBecomeActive(_ scene: UIScene) {
// Called when the scene has moved from an inactive state to an active state.
// Use this method to restart any tasks that were paused (or not yet started) when the scene was inactive.
}
func sceneWillResignActive(_ scene: UIScene) {
// Called when the scene will move from an active state to an inactive state.
// This may occur due to temporary interruptions (ex. an incoming phone call).
}
func sceneWillEnterForeground(_ scene: UIScene) {
// Called as the scene transitions from the background to the foreground.
// Use this method to undo the changes made on entering the background.
}
func sceneDidEnterBackground(_ scene: UIScene) {
// Called as the scene transitions from the foreground to the background.
// Use this method to save data, release shared resources, and store enough scene-specific state information
// to restore the scene back to its current state.
}
}
the delay occurs after the launch screen have been finishing. Moreover, on the previous version, in which there is no launch screen, the delay also occurs.
I tried to use both in the viewDidLoad() or in the viewVillAppear() methods, adding tableView.reloadData(). It still doesn't work.
Could you show me your full code?
Thank you very much! It looks unexpected, but it works
Could you please explain to me a little why the tableView.reloadData() method is called here before passing the value to the label? It is usually called after the changes in the cell.
Thank you for your help.
Yes, I've checked all the files, but it looks like I'm missing something. I will try to redo the project again.
I found the cause and fixed it. It turns out that this is a fairly well-known problem that was repeated in previous versions of the Xcode. In my case, I needed to edit the scheme and reload the Xcode. But it only worked when I shifted on another preview, and then returned to the landmarkList preview.
The issue has been resolved. The topic is closed.
Thanks a lot!
Thank you so much! It works!
P.S. But one question remained with me. Why does Jacob's code work without this?
Below is a screenshot of his code.
I used the Interface Bilder