J'ai une vue de collection avec la pagination activée. J'utilise AVSpeechSynthesizer pour la synthèse vocale dans les cellules de la vue de collection. Je veux que la voix s'arrête quand je glisse d'une cellule à l'autre. En ce moment j'appelle la fonction stopSpeech, qui est déclarée dans la classe de cellules. J'appelle ensuite la fonction dans la méthode didEndDisplayingCell de collectionView.SpeechUtterance ne s'arrête pas
func collectionView(_ collectionView: UICollectionView, didEndDisplaying cell: UICollectionViewCell, forItemAt indexPath: IndexPath) {
let cell=collectionView.dequeueReusableCell(withReuseIdentifier: "detailArticleCell", for: indexPath) as! DetailArticleCell
cell.stopSpeech()
}
Cela ne fonctionne que toutes les trois cellules. Mais je veux que la voix s'arrête lorsque l'utilisateur passe à la cellule suivante à chaque fois.
Ashiq Sulaiman: combien de cellules sont affichées sur un écran à la fois? – Hooda
@hooda une seule cellule. C'est la pagination activée. –
Pourquoi utilisez ** cell.stopSpeech() ** au lieu de ** stopSpeech() **? – Hooda