Partager via


Utilisation des contrôles de page tvOS dans Xamarin

Parfois, vous devrez peut-être afficher une série de pages ou d’images dans votre application Xamarin.tvOS. Un contrôle de page a été conçu pour afficher clairement la page sur laquelle un utilisateur est sur le nombre maximal de pages. Un contrôle page affiche une série de points par rapport à un arrière-plan en forme d’ovale foncé. La page active affiche un point rempli, toutes les autres pages s’affichent sous forme de points creux. Le contrôle Page va découper la plupart des points externes s’il y a trop de points à ajuster dans sa zone d’arrière-plan.

Exemple de contrôle Page

Contrôle de page dans un élément non interactif conçu pour envoyer des commentaires à l’utilisateur uniquement. Vous devez ajouter d’autres contrôles pour modifier le numéro de page actuel (par exemple, les mouvements ou les boutons).

Apple propose les suggestions suivantes lors de l’utilisation d’un contrôle de page :

  • Utiliser uniquement sur les collections complètes : les contrôles de page fonctionnent le mieux dans un environnement plein écran pour afficher plusieurs pages qui existent dans une seule collection.
  • Limitez le nombre de pages - Les contrôles de page fonctionnent mieux pour dix (10) pages ou moins, et un maximum de vingt (20) pages. Pour plus de vingt pages, envisagez d’utiliser un affichage collection et d’afficher les pages d’une grille.

Contrôles de page et tableaux de montage séquentiel

Le moyen le plus simple d’utiliser les contrôles de page dans une application Xamarin.tvOS consiste à les ajouter à l’interface utilisateur de l’application à l’aide du concepteur iOS.

  1. Dans le panneau Solution, double-cliquez sur le Main.storyboard fichier et ouvrez-le pour modification.

  2. Faites glisser un contrôle de page à partir de la boîte à outils et déposez-le dans l’affichage :

    Contrôle de page

  3. Dans l’onglet Widget du panneau Propriétés, vous pouvez ajuster plusieurs propriétés du contrôle Page, telles que sa page active et son nombre de pages :

    Onglet Widget

  4. Ensuite, ajoutez des contrôles ou des mouvements à la vue pour avancer vers l’arrière et vers l’avant dans la collection de pages.

  5. Enfin, affectez des noms aux contrôles afin que vous puissiez y répondre en code C#. Par exemple :

    Nommez le contrôle

  6. Enregistrez vos modifications.

Important

Bien qu’il soit possible d’affecter des événements tels qu’un TouchUpInside élément d’interface utilisateur (tel qu’un UIButton) dans le Concepteur iOS, il ne sera jamais appelé, car Apple TV n’a pas d’écran tactile ou ne prend pas en charge les événements tactiles. Vous devez toujours utiliser l’événement lors de la Primary Action création de gestionnaires d’événements pour les éléments d’interface utilisateur tvOS.

Modifiez votre fichier View Controller (exemple ViewController.cs) et ajoutez le code pour gérer les pages en cours de modification. Par exemple :

using System;
using Foundation;
using UIKit;

namespace MySingleView
{
    public partial class ViewController : UIViewController
    {
        #region Computed Properties
        public nint PageNumber { get; set; } = 0;
        #endregion

        #region Constructors
        public ViewController (IntPtr handle) : base (handle)
        {
        }
        #endregion

        #region Override Methods
        public override void ViewDidLoad ()
        {
            base.ViewDidLoad ();

            // Initialize
            PageView.Pages = 6;
            ShowCat ();
        }

        public override void DidReceiveMemoryWarning ()
        {
            base.DidReceiveMemoryWarning ();
            // Release any cached data, images, etc that aren't in use.
        }
        #endregion

        #region Custom Actions
        partial void NextCat (UIBarButtonItem sender) {

            // Display next Cat
            if (++PageNumber > 5) {
                PageNumber = 5;
            }
            ShowCat();

        }

        partial void PreviousCat (UIBarButtonItem sender) {
            // Display previous cat
            if (--PageNumber < 0) {
                PageNumber = 0;
            }
            ShowCat();
        }
        #endregion

        #region Private Methods
        private void ShowCat() {

            // Adjust UI
            PreviousButton.Enabled = (PageNumber > 0);
            NextButton.Enabled = (PageNumber < 5);
            PageView.CurrentPage = PageNumber;

            // Display new cat
            CatView.Image = UIImage.FromFile(string.Format("Cat{0:00}.jpg",PageNumber+1));
        }
        #endregion
    }
}

Examinons de plus près deux propriétés du contrôle page. Tout d’abord, pour spécifier le nombre maximal de pages, utilisez les éléments suivants :

PageView.Pages = 6;

Pour modifier le numéro de page actif, utilisez le code suivant :

PageView.CurrentPage = PageNumber;

La CurrentPage propriété est de base zéro (0), de sorte que la première page sera égale à zéro et la dernière sera un moins le nombre maximal de pages.

Pour plus d’informations sur l’utilisation de Storyboards, consultez notre Guide de démarrage rapide Hello, tvOS.

Résumé

Cet article a abordé la conception et l’utilisation du contrôle de page à l’intérieur d’une application Xamarin.tvOS.