Pergunta

Qual é a diferença entre os métodos addSubview e insertSubView quando uma exibição é adicionado programaticamente?

Foi útil?

Solução

A única diferença está em que é adicionado o ponto de vista: se é a visão mais à frente (addSubview:), ou seja, antes da 5ª subexibição, (insertSubview:atIndex:) ou se é imediatamente atrás de outro subexibição (insertSubview:aboveSubview:)

Outras dicas

Usando insertSubView: você pode especificar o índice, que determina z-ordem de pontos de vista. Uma vista com um maior índice de mentiras acima aqueles com índices mais baixos.

Eu não acho que há uma diferença. addSubview: é simples um método conveniente para

[view insertSubview:aView atIndex:[view.subviews count]]

1.addSubview add subexibição em ordem, em seguida, adicionar em View'slayer

- (void)addSubview:(UIView *)subview
{
    [_subviews addObject:subview];
    [_layer addSublayer:subview.layer];
}

}

2.While insertSubview adicionar sua visão como subexibição então chamada [_layer insertSublayer:subview.layer atIndex:index];

- (void)insertSubview:(UIView *)subview atIndex:(NSInteger)index
{
  [self addSubview:subview];
  [_layer insertSublayer:subview.layer atIndex:index];
}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top