But : Un diaporama iOS vachement plus mieux que tout ce qui a été fait jusqu’à présent puisqu’il va faire apparaître des composants chouettes…
Technologies : quelques objets particuliers de l’UIKit, (Woody Wood) PickerView,
Des données de Diaporama organisées autrement.
- Modifier le code de sorte que des diaporamas puissent être affichés. Pour cela, Utiliser une structure à trois dimensions (type, sous-type, image) via des
NSArrays
, et dans laquelle :- le type est le type générique d’un ensemble de Diaporamas :
Montagne
,Mer
, … - le sous-type raffine le type en proposant diverses déclinaisons, exemple pour
Montagne
:Alpes
,Rocheuses
, etc - image est une image appartenant au diaporama de type et sous-type correspondant.
- le type est le type générique d’un ensemble de Diaporamas :
- Idem pour la musique mais avec une simple liste de musiques/sons… La liste devra être une liste de couples (nom,fichier), le nom servira à l’affichage, et le fichier désignera le nom du fichier contenant la musique.
- Si l’interface est trop chargée : réfléchir à son allègement (écran secondaire, un seul
PickerView
additionné deLabel
s, autres composants, etc.). - Les structures de données peuvent éventuellement être reconstruites par analyse de la structure de répertoires contenus dans l’application (attention à la distinction entre répertoires et groupes…)
Une configuration plus complexe
- Modifier la partie configuration de l’application de sorte que deux
UIPickerView
soient utilisés afin de présenter : pour l’un les choix de type/sous-type des diaporamas, pour l’autre les musiques/sons possibles. Consulter la documentation deUIPIckerView
et observer que deux délégués sont utilisés :- le
dataSource
de typeUIPickerViewDataSource
et dont le rôle est de fournir des informations sur la composition structurelle du composant (nombre de colonnes, nombre d’éléments par colonne) - le
delegate
de typeUIPickerViewDelegate
chargé de fournir les données à afficher dans laPickerView
(pickerView:titleForRow:forComponent:
) et de répondre à la sélection par l’utilisateur (pickerView:didSelectRow:inComponent:
)
- le