Lar Mídia social Como controlar a visualização em seu aplicativo para iPad - dummies

Como controlar a visualização em seu aplicativo para iPad - dummies

Vídeo: COMO CONTROLAR O TEMPO E O QUE SEUS FILHOS ACESSAM NO CELULAR - SCREEN TIME | ANDROID4ALL 2025

Vídeo: COMO CONTROLAR O TEMPO E O QUE SEUS FILHOS ACESSAM NO CELULAR - SCREEN TIME | ANDROID4ALL 2025
Anonim

Ao criar seu aplicativo para iPad, você precisa incluir o código que controla a visualização naquele aplicativo. O exemplo seguinte do aplicativo iPad foi projetado para exibir as palavras que se deslocam para baixo na tela. Depois de abrir o arquivo DeepThoughtsViewController. m para que ele apareça no editor de texto, insira o código em negrito (o código que não está em negrito é fornecido pelo modelo de aplicativo com base em exibição):

#import "DeepThoughtsViewController. h" #import " Constantes. h " @implementação DeepThoughtsViewController @ Sintetizar a velocidade, imageView; #pragma mark - #pragma mark Exibir o ciclo de vida / * // O inicializador designado. Substituir para executar a configuração necessária antes que a vista seja carregada. - (id) initWithNibName: (NSString *) nibNameOrNil bundle: (NSBundle *) nibBundleOrNil {if (self = [super initWithNibName: nibNameOrNil bundle: nibBundleOrNil]) {// Custom initia lization} return self;} * / / * // Implementar loadView para criar uma hierarquia de exibição de forma programática, sem usar um nib. - (void) loadView {} * / / * // Implemente viewDidLoad para fazer uma configuração adicional após o carregamento da vista, geralmente a partir de um nib. - (void) viewDidLoad {[super viewDidLoad];} * / - (void) viewDidLoad { [super viewDidLoad]; [NSTimer scheduleTimerWithTimeInterval:. 5 alvo: auto-seletor: @selector (onTimer) userInfo: nil repeats: YES]; if (! [[NSUserDefaults standardUserDefaults] objectForKey: kWordsOfWisdom]) { [[NSUserDefaults standardUserDefaults] setObject: @ " Peace Love Groovy Music " forKey: kWordsOfWisdom]; fallingWords = @ " Love Love Groovy Music " ; } else { fallingWords = [[NSUserDefaults standardUserDefaults] stringForKey: kWordsOfWisdom]; } se (! [[NSUserDefaults standardUserDefaults] objectForKey: kSpeed]) { [[NSUserDefaults standardUserDefaults] setDouble: 10. 0 forKey: kSpeed]; speed = kMaxSpeed-10. 0;} else { speed = kMaxSpeed ​​- [[NSUserDefaults standardUserDefaults] doubleForKey: kSpeed]; } } #pragma mark - #pragma mark Animação - (void) onTimer { UILabel * fallingImageView = [[UILabel alloc] initWithFrame: CGRectMake (0, 0, 100, 30)]; fallingImageView. texto = palavras faltantes; fallingImageView. textColor = [UIColor purpleColor]; fallingImageView. font = [UIFont systemFontOfSize: 30]; fallingImageView. backgroundColor = [UIColor clearColor]; fallingImageView. ajustaFontSizeToFitWidth = YES; int startX = round (random ()% 400); int endX = round (random ()% 400); // velocidade de queda double randomSpeed ​​= (1 / round (random ()% 100) +1) * velocidade; // tamanho da imagem; escala duplaH = (1 / rodada (aleatória ()% 100) +1) * 60; escala dupla W = (1 / rodada (aleatória ()% 100) +1) * 200; [self.veja addSubview: fallingImageView]; fallingImageView. frame = CGRectMake (startX, -100, scaleW, scaleH); fallingImageView. alfa =. 75; [UIView beginAnimations: nil context: fallingImageView]; [UIView setAnimationDuration: randomSpeed]; [UIView setAnimationDelegate: self]; [UIView setAnimationDidStopSelector: @selector (animationDone: finished: context:)]; fallingImageView. frame = CGRectMake (endX, auto. view. frame. size. height, scaleW, scaleH); [UIView commitAnimations]; } - (void) animationDone: (NSString *) animationID terminou: (NSNumber *) contexto concluído: (id) context { UIImageView * fallingImageView = context; [fallingImageView removeFromSuperview]; [lançamento de FallImageView]; } #pragma mark - #pragma mark Controlos - (IBAction) configurações { } # marca de praga - # marca de praga Orientação // Substituir para permitir orientações diferentes da orientação vertical padrão. - (BOOL) shouldAutorotateToInterfaceOrientation: (UIInterfaceOrientation) interfaceOrientation {return YES;} #pragma mark - # marca de praga Gerenciamento de memória - (void) didReceiveMemoryWarning {// Libera a exibição se ela não tiver um superview. [super didReceiveMemoryWarning]; // Libera quaisquer dados armazenados em cache, imagens, etc. que não estejam em uso.} - (void) viewDidUnload {// Libera todas as submissões retidas da vista principal. // e. g. auto. myOutlet = nil;} - (void) dealloc {[super dealloc];} @end

Aqui está uma quebra do código que você adiciona:

  • A primeira declaração que você adiciona importa as Constantes. arquivo h. Agora você pode usar as chaves que você configurou com NSUserDefaults no código subseqüente para recuperar as configurações do usuário.

  • Objetivo-C cria os métodos de acesso que você precisa para você sempre que você incluir uma instrução @synthesize; a declaração no código anterior cria um método de acesso para cada declaração de @property (velocidade e imageView).

  • As duas instruções # pragma mark contêm o código de inicialização e carregamento.

  • A mensagem viewDidLoad é enviada logo após a exibição ter sido carregada a partir do arquivo nib (o arquivo xib que você pode modificar no Interface Builder). Este é o lugar onde você insere seu código para a inicialização da exibição, o que, neste caso, significa exibir as palavras caem do DeepThoughts. O método viewDidLoad que você inseriu começa por configurar um cronômetro para o intervalo entre cada exibição de palavras caindo.

    Você usa a classe NSTimer para criar temporizadores. Um temporizador aguarda até um certo intervalo de tempo decorrido e, em seguida, dispara, enviando uma mensagem especificada para um objeto alvo. Este código usa scheduleTimerWithTimeInterval: target: selector: userInfo: repeats: método de classe para criar o temporizador e agendá-lo no loop de execução atual no modo padrão. O intervalo é 0. 5 segundos, o alvo é auto, eo seletor é a mensagem a enviar para o alvo quando o temporizador dispara - neste caso, noTimer. O userInfo é a informação do usuário para o temporizador (definido como nulo) e o temporizador está configurado para repetir - ou seja, ele se reprogramará repetidamente até ser invalidado.

  • Em seguida, o código verifica se a configuração kWordsOfWisdom foi movida para NSUserDefaults.

  • O código move as preferências do usuário para NSUserDefaults somente após o aplicativo ser executado pela primeira vez. Se as configurações ainda não tiverem sido movidas para NSUserDefaults, o código usa o valor de preferência inicial ("Love Love Groovy Music") para o Word. Se as configurações foram movidas para NSUserDefaults, o código as lê e, em seguida, define o quebra-cabeça para qualquer que seja a preferência do usuário. O código então repete essa verificação com a configuração de velocidade.

    Você usa standardUserDefaults (um método de classe NSUserDefaults) para obter acesso às configurações padrão do usuário padrão e você pode armazenar dados lá.

  • A seção #pragma mark intitulada Controls inclui o método de configurações de espaço reservado para conectar o botão Light Info ao controlador de visualização. Este é o método de ação que usa o qualificador IBAction.

  • A conexão do temporizador ao desenho real do visor é o método onTimer. A classe UILabel implementa uma visualização de texto somente leitura. Você pode usar esta classe para desenhar uma ou várias linhas de texto estático. Nesse caso, o bloco de código usa o método initWithFrame com CGRectMake para criar um retângulo, com a coordenada x e a coordenada y do ponto de origem do retângulo em (0, 0) e uma largura e altura especificadas (100, 30).

  • O código converte a seqüência de caracteres de falha em fallingImageView para exibição; configura a cor do texto, a fonte e a cor do plano de fundo; e ajusta o tamanho da fonte para a largura. As propriedades de fonte e textColor aplicam-se a toda a cadeia de texto.

  • O próximo bloco de código usa a função aleatória para os pontos inicial e final (startX e endX), para velocidade e para largura (scaleW) e height (scaleH) para fallingImageView.

  • O beginAnimations: context: método inicia o bloco de animação e o método commitAnimations termina o bloco. Dentro do bloco, o código define valores de propriedade para fazer mudanças visuais que compõem a animação.

  • O método setAnimationDuration define a duração da animação e setAnimationDidStopSelector define a mensagem para enviar ao delegado de animação quando a animação pára. O delegado de animação é animationDone, que usa removeFromSuperview (um método de instância da classe UIView) para remover fallingImageView e, em seguida, usa a versão (um método de instância da classe NSAutoreleasePool) para liberar fallingImageView.

  • Finalmente, esse código possui duas instruções de marca pragma para marcar a seção como Orientação e mais duas instruções de marca de pragma acima do método didReceiveMemoryWarning para marcar essa seção como Gerenciamento de memória.

Como controlar a visualização em seu aplicativo para iPad - dummies

Escolha dos editores

Como criar uma tabela de dados de variável única no Excel 2013 - dummies

Como criar uma tabela de dados de variável única no Excel 2013 - dummies

Ao criar uma tabela de dados de uma variável no Excel 2013, você designa uma célula na planilha que serve como célula de entrada de linha (se você inseriu a série de possíveis valores em colunas de uma única linha) ou como a célula de entrada de coluna ( se você inseriu a série de valores possíveis nas fileiras ...

Como criar um relatório de resumo de cenário no Excel 2010 - manequins

Como criar um relatório de resumo de cenário no Excel 2010 - manequins

Depois de usar o Gerenciador de cenário para adicionar cenários para uma tabela em uma planilha, você pode ter o Excel 2010 produzir um relatório de resumo. Este relatório exibe não apenas a mudança e os valores resultantes para todos os cenários que você definiu, mas também os valores atuais nas células em mudança na tabela da planilha no momento em que você ...

Como criar um Slicer padrão para painéis do Excel - os dummies

Como criar um Slicer padrão para painéis do Excel - os dummies

Os cortadores oferecem a capacidade de adicionar um atraente, bem como interface de usuário interativa para seus painéis e relatórios. Os cortadores permitem que você filtre sua tabela dinâmica de uma maneira que seja semelhante à maneira como os campos Filtrar filtram uma tabela dinâmica. A diferença é que os cortadores oferecem uma interface fácil de usar, permitindo que você melhore ...

Escolha dos editores

Como abrir o Word 2007 a partir do botão Iniciar - manequins

Como abrir o Word 2007 a partir do botão Iniciar - manequins

Sem falhar, o local para iniciar o Word 2007 está no botão inicial do Fabled. Pode não ser a maneira mais legal de iniciar o Word, mas é consistente e confiável - uma boa ferramenta para ter quando você precisa criar um documento. Clique no botão Iniciar. Isso exibe o menu Iniciar. Escolha o Word a partir do ...

Como abrir um documento dentro de outro no Word 2013 - manequins

Como abrir um documento dentro de outro no Word 2013 - manequins

É Possível no Word 2013 para abra um documento dentro de outro. Fazer isso não é tão raro quanto você pensaria. Por exemplo, você pode ter sua biografia, currículo ou curriculum vitae em um arquivo no disco e quer adicionar essa informação ao final de uma carta implorando por um trabalho. Em caso afirmativo, siga ...

Como abrir o Word 2007 com a barra de ferramentas Quick Launch - dummies

Como abrir o Word 2007 com a barra de ferramentas Quick Launch - dummies

Você pode iniciar o Word 2007 rapidamente e usando facilmente a barra de ferramentas Quick Launch. Localizado logo ao lado do botão Iniciar na barra de tarefas, a barra de ferramentas de inicialização rápida é uma linha de ícones que representam programas, que você pode começar com um único clique do mouse.

Escolha dos editores

Como rever e eliminar comentários nos documentos do Word de 2010 - manequins

Como rever e eliminar comentários nos documentos do Word de 2010 - manequins

Num breve documento do Word 2013 , você pode percorrer e examinar os comentários, especialmente se eles estão em balões. Em um documento muito longo, no entanto, você pode achar mais fácil usar os botões Próximo e Anterior no grupo Comentários da guia Revisão para passar de um comentário para outro. Em um Word 2013 ...

Como revisar as alterações de rastreamento no Word 2016 - manequins

Como revisar as alterações de rastreamento no Word 2016 - manequins

Depois que o documento pobre e macio do Word 2016 é retornado Para você, a melhor maneira de revisar o dano infligido pelos revisores (editores) é usar os comandos na guia Revisão, localizados no grupo Mudanças. Esses comandos estão ilustrados na figura; Dependendo do tamanho da janela, você pode ou não ver o texto ...

Como executar uma verificação ortográfica no Word 2007 - dummies

Como executar uma verificação ortográfica no Word 2007 - dummies

Use o feitiço incorporado do Word 2007 verificador depois de criar um documento para comprová-lo por erros de digitação, erros ortográficos e palavras repetidas. Em seguida, decida em um caso palavra por palavra - ou globalmente - se deseja que o Word 2007 faça correções ortográficas. Na guia Revisão, clique no botão Ortografia e gramática. A ortografia e a gramática ...