Noções básicas de desenho usando gráficos 2-d no aplicativo ios

Video: iPhone's New Clips App!

Usando os controles internos para a definição de interface de usuário de seu aplicativo iOS é divertido e fácil. No entanto, há um caminho de volta ao básico para desenhar sua interface de usuário dentro de uma visão usando a estrutura iOS Quartz gráficos que lhe proporciona a capacidade de gráficos 2-D, como ilustrado no desenho da placa Tic-Tac-Toe.

Video: Top 25 Fighting Games For iOS & Android Upto 2016!

Para ver um exemplo do uso de gráficos 2-D, consulte a classe Board (arquivos TTTBoard.m e .h). O arquivo de interface da classe Board é mostrado aqui:

@ interface TTTBoard: UIView {...} ... -d

Note que o método drawRect é cancelou na classe base View, como mostrado aqui:


 // Desenho code-(void) drawRect: (CGRect) rect {int GridSize = TTTBOARDSIZE-UIBezierPath * drawingPath = [UIBezierPath bezierPath] - // desenhar linesfor vertical (int i = 0- i lt; = 3- i ++) {int x = TTTBOARDLOCATIONINVIEWX + [auto getWidth] * i- [drawingPath moveToPoint: CGPointMake (x, TTTBOARDLOCATIONINVIEWY)] - [drawingPath addLineToPoint: CGPointMake (x, TTTBOARDLOCATIONINVIEWY + GridSize)] -} // sorteio linesfor horizontal (int j = 0- j lt; = 3- j ++) {int y = TTTBOARDLOCATIONINVIEWY + j * [auto getHeight] - [drawingPath moveToPoint: CGPointMake (TTTBOARDLOCATIONINVIEWX, y)] - [drawingPath addLineToPoint: CGPointMake (TTTBOARDLOCATIONINVIEWX + GridSize, y)] -} [[UIColor redColor] setStroke] - [drawingPath acidente vascular cerebral] - // desenha o symbolsfloat offsetX = 0-float offsetY = 0-for (int i = 0- i lt; GAMEGRIDSIZE- i ++) {para (j = int 0- j lt; GAMEGRIDSIZE- j ++) {UIImage * imageSelected = [[grade getValueAtLocation: i: j] getBitmapForSymbol] -CGSize imageSize = [tamanho imageSelected] -offsetX = TTTBOARDLOCATIONINVIEWX + (int) (largura * i + (largura - imageSize.width) / 2 ) -offsetY = TTTBOARDLOCATIONINVIEWY + (int) (altura * j + (altura - imageSize.height) / 2) - [imageSelected drawAtPoint: CGPointMake (offsetX, offsetY)] -}}}

As linhas relevantes para 2-D desenho ilustrações são extraídos a partir do método, como mostrado a seguir:

UIBezierPath * drawingPath = [UIBezierPath bezierPath] - ... [drawingPath moveToPoint: CGPointMake (TTTBOARDLOCATIONINVIEWX, y)] - [drawingPath addLineToPoint: CGPointMake (TTTBOARDLOCATIONINVIEWX + GridSize, y)] - ... [[UIColor RedColor] setStroke] - [drawingPath acidente vascular cerebral] - ... [imageSelected drawAtPoint: CGPointMake (offsetX, offsetY)] -

Primeiro, a classe UIBezierPath permite definir um caminho que consiste em segmentos de linha. Os métodos utilizados aqui para a adição de segmentos de linha são moveToPoint e addLineToPoint. Em seguida, a cor da caneta é definida usando setStroke- então a linha é processado usando o método acidente vascular cerebral. Finalmente, a última declaração - [imageSelected drawAtPoint: CGPointMake (offsetX, offsetY)] - - desenha uma imagem (neste caso, qualquer um dos símbolos Tic-Tac-Toe, incluindo o símbolo vazio) no grid.


Publicações relacionadas