J'ai un UITableView
avec environ 30 cellules, 5 sont visibles à la fois. Dans chaque cellule, j'ai 2 UILabels
et 1 UIImageView
.iPhone imageView layer masksToBound conduit à lent défilement
J'utilise CALayer pour rendre la vue de l'image avec une bordure arrondie.
myImageView.layer.masksToBounds = YES;
myImageView.layer.cornerRadius = 2.5;
myImageView.layer.borderWidth = 1.0;
myImageView.layer.borderColor = [[UIColor lightGrayColor] CGColor];
particually la ligne masksToBounds
rend la vitesse de défilement très lent sur l'appareil. Je ne peux pas envelopper ma tête autour des cellules de sous-classement et dessiner moi-même. (J'ai échoué après avoir voulu NSStrings avec 2 lignes)
De toute façon y a-t-il un moyen d'utiliser CALayers masksToBounds sans cette baisse de performance?
Quelque chose qui peut aider est de vérifier si le ralentissement est dû à l'animation de la couche. Je ne sais pas exactement comment vérifier cela pour votre cas, mais j'ai eu quelque chose de semblable qui m'est arrivé. Une fois que j'ai désactivé les animations cela a très bien fonctionné. – MrHen
Pourriez-vous préciser ce que vous voulez dire? Comment désactiver les animations? Ce code affiché est le seul code CALayer que j'ai dans mon application. – scud
Changez le layer.speed à quelque chose ridiculement haut comme 20. Est-ce que cela accélère? J'apprends encore comment désactiver les animations moi-même, malheureusement, donc je ne peux pas vous aider là-bas. Le réglage de la vitesse aidera à identifier si l'animation provoque le ralentissement mais ce n'est pas une bonne solution permanente. – MrHen