Domanda

Qual è la differenza tra i metodi addSubview e insertSubView quando si aggiunge una vista a livello di codice?

È stato utile?

Soluzione

L'unica differenza è nel cui viene aggiunta la vista: se è la vista in primo piano (addSubview:), oppure è prima del 5 ° visualizzazione secondaria, (insertSubview:atIndex:) oppure se è subito dietro un'altra visualizzazione secondaria (insertSubview:aboveSubview:)

Altri suggerimenti

Usando insertSubView: è possibile specificare l'indice, che determina ordine z di opinioni. Una vista con un indice maggiore sovrastante quelli con indici inferiori.

Non credo che ci sia una differenza. addSubview: è semplice un metodo conveniente per

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

1.addSubview aggiungere visualizzazione secondaria in serie quindi aggiungere in View'slayer

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

}

2.Mentre insertSubview aggiungere la visualizzazione come visualizzazione secondaria quindi chiamare [_layer insertSublayer:subview.layer atIndex:index];

- (void)insertSubview:(UIView *)subview atIndex:(NSInteger)index
{
  [self addSubview:subview];
  [_layer insertSublayer:subview.layer atIndex:index];
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top