Tipos de propriedades rápidas

Em Swift, variáveis ​​de suporte são explicitamente declarada, se necessário (geralmente em código convertido de Objective-C). Além disso, getters não precisa usar o obter

palavra-chave. Swift propriedades podem ser variáveis ​​ou constants- cada tipo podem ser armazenados ou calculado, como segue:

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

    var _fetchedResultsController: NSFetchedResultsController? = nil
  • Declarando uma propriedade constante: A constante (isto é, 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:

    Video: Telecurso2000 - Aula 46/50 - Química - Tipos e Propriedade dos Plásticos

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

    // MARK: - resultados buscados controllervar fetchedResultsController: NSFetchedResultsController {if _fetchedResultsController = nil {return _fetchedResultsController} permitem 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 ordenação como appropriate.let sortDescriptor = NSSortDescriptor (-chave:"timeStamp", Ascendente: false) deixe sortDescriptors = [sortDescriptor] fetchRequest.sortDescriptors = [sortDescriptor] // Edite a chave nome de caminho e cache de nomes seção se appropriate.// nulo para o nome secção meio caminho da chave "há seções".let aFetchedResultsController = NSFetchedResultsController (fetchRequest: fetchRequest, managedObjectContext: self.managedObjectContext, sectionNameKeyPath: nil, cacheName: "mestre") AFetchedResultsController.delegate = self_fetchedResultsController = aFetchedResultsControllervar erro: NSError? = Nilif! _fetchedResultsController! .performFetch (&erro) {// Substituir esta aplicação com código para lidar com // o erro appropriately.// abort () faz com que o aplicativo para gerar um log acidente // e terminar. Você não deve usar esta função // em um aplicativo de envio, embora // pode ser útil durante development.println ("erro não resolvido (erro), (error.userInfo)") Abort ()} retornar _fetchedResultsController} var _fetchedResultsController: NSFetchedResultsController? = NilBy padrão, a variável passado para o setter é chamado newValue, 
    e Swift usa o tipo apropriado para ele.

    O exemplo usa um padrão de Objective-C para uma variável de apoio: Swift armazenados 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 do inicialização) antes de serem usados.

    var _fetchedResultsController: NSFetchedResultsController? = nil


  • Declarando 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 aquilo myVar tem uma variável de suporte myInt. o obter e conjunto palavras-chave identificar o getter e setter.

    Video: O segredo da água que pega fogo (Química + mágica)

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

    Isto é como você criar um propriedade calculada.

    Video: Eletrostática [Propriedades da carga elétrica, tipos de eletrização]

Além dos getters e setters mostrados na figura a seguir, você pode usar observadores, como mostrado na próxima listagem. Este é o código da DetailViewController.swift arquivo de Locatapp (a partir do modelo Aplicação mestre-detalhe).

var detailItem: AnyObject? {DidSet {// Atualize 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: Isso é chamado pouco antes da configuração acontece.


Publicações relacionadas