Tipos de Propriedades Swift

Em Swift, variáveis ​​de suporte são explicitamente declarada, se necessário (geralmente no código convertido a partir Objectivo # 8208-C). Além disso, getters não é necessário utilizar o obter palavra-chave. Swift propriedades podem ser variáveis ​​ou constants- cada tipo podem ser armazenados ou calculado, como segue:

  • Declarar uma propriedade variável: Uma variável é introduzido com a palavra-chave var como em:

    var _fetchedResultsController: NSFetchedResultsController? = nil
  • Declarar uma propriedade constante: Uma constante (ou seja, uma propriedade que não pode ser modificada) é introduzido com a palavra-chave Let. A declaração anterior pode ser alterado para declarar uma constante da seguinte forma:

    deixe _fetchedResultsController: NSFetchedResultsController? = nil
  • Declarar uma propriedade armazenado: A declaração de _fetchedResultsController mostrado na seguinte lista é uma declaração de um típico armazenado da propriedade. Uma propriedade armazenado é uma propriedade armazenada como parte de uma instância da classe, enumeração ou estrutura.

    // MARK: - resultados buscados controllervar fetchedResultsController:! NSFetchedResultsController {if _fetchedResultsController = nil {return _fetchedResultsController} deixe fetchRequest = NSFetchRequest () // Edite o nome da entidade como appropriate.let entidade = NSEntityDescription.entityForName ( "Evento", inManagedObjectContext: ! self.managedObjectContext) fetchRequest.entity = entidade // Defina o tamanho do lote para um number.fetchRequest.fetchBatchSize adequado = 20 // Editar a chave de classificação como appropriate.let sortDescriptor = NSSortDescriptor (key: "timeStamp", ascendente: false) deixe sortDescriptors = [sortDescriptor] fetchRequest.sortDescriptors = [sortDescriptor] // Edite o caminho da chave do nome da seção e o nome do cache se appropriate.// nulo para o caminho de chave nome da seção significa "sem cortes" .let aFetchedResultsController = NSFetchedResultsController (fetchRequest: fetchRequest, managedObjectContext: self.managedObjectContext, sectionNameKeyPath: nil, cacheName: "master") aFetchedResultsController.delegate = self_fetchedResultsController = aFetchedResultsControllervar erro: NSError? = Nilif! _fetchedResultsController! .performFetch (Erro) {// Substituir esta aplicação com código para manipular // o erro appropriately.// abort () faz com que o aplicativo para gerar um registro de acidente // e terminar. Você não deve usar esta função // em um aplicativo de envio, embora // pode ser útil durante development.println ( "não resolvidos erro (erro), (error.userInfo)") abort ()} retornar _fetchedResultsController!} Var _fetchedResultsController: NSFetchedResultsController? = NilBy padrão, a variável passada para o setter é chamado newValue, 
    e Swift usa o tipo apropriado para ele.

    O exemplo usa um # 8208-C padrão Objectivo para uma variável de apoio: Swift armazenado propriedades não precisa começar com um caractere especial, como um underscore- no entanto, eles precisam fazer para ser inicializado e dado um tipo (talvez inferida a partir da inicialização) antes de serem utilizados.

    var _fetchedResultsController: NSFetchedResultsController? = nil
  • Declarar uma propriedade computada com um getter e um setter: Este ponto merece um pouco de elucidação. A listagem mostra um getter básico e setter de uma propriedade Swift. Você pode ver isso myVar tem uma variável de suporte myInt. o obter e conjunto palavras-chave identificar o getter e setter.

    var myInt: Int = 0var myVar: Int {get {return myInt} set {myInt = newValue}} myVar = 20

    Isto é como você criar um propriedade calculada.

Além disso para os getters e configuradores mostrado na figura a seguir, pode utilizar observadores, como mostrado na lista seguinte. Este é o código da DetailViewController.swift arquivo de Locatapp (a partir do Master # modelo de Aplicação 8208-detalhe).

image0.jpg
var detailItem: AnyObject? {DidSet {// Atualizar o view.self.configureView ()}} Definir um ponto de interrupção neste método e executar o aplicativo no iOS Simulator. O botão faz com que o método a ser chamado.

Este é um bom lugar para chamar de um atualizador de vista (que é exatamente o que é feito no modelo). Há dois observadores que você pode usar:

  • didSet: Isso é chamado após o fato.

  • ajustarei: Isto é chamado um pouco antes da configuração acontece.

menu