UIPageControl - Comment rendre le fond transparent?
Je suis en utilisant UIPageControl
et en essayant de rendre le fond transparent.
UIPageControl *pageControl = [UIPageControl appearance];
pageControl.pageIndicatorTintColor = [UIColor lightGrayColor];
pageControl.currentPageIndicatorTintColor = [UIColor blackColor];
pageControl.backgroundColor = [UIColor blackColor];
Des suggestions?
Essayé
pageControl.backgroundColor = [UIColor clearColor];
pas de chance.
============
Bon, comme mentionné par @powerj1984 et @daniellarsson UIPageControl
ne semble pas être modifiables à l'égard de la position et la couleur d'arrière-plan.
J'ai donc décidé de déplacer ce UIViewController et créé un UIPageControl
et
@property (weak, nonatomic) IBOutlet UIPageControl *pageControl;
Et puis porter ce haut de mon UIPageViewController
comme dans viewDidLoad
self.pageControl.numberOfPages = self.pageTitles.count;
[self.view addSubview:_pageControl.viewForBaselineLayout];
Puis j'ai mis à jour l'index de UIPageControl
dans viewControllerBeforeViewController
et viewControllerAfterViewController
NSUInteger index = ((HomePageContentViewController*) viewController).pageIndex;
self.pageControl.currentPage = index;
Sauf si cela a été mis à jour en iOS 7 je ne pense pas que la couleur de fond est une option pour UIPageControl apparence, voir cette réponse: stackoverflow.com/questions/9881088/uipagecontrol-uiappearance
De quelle couleur est-il maintenant? Je ne pense pas que vous pouvez modifier la couleur d'arrière-plan par le biais de l'apparence, et de plus, je suppose qu'il a été transparent par défaut?
Son blanc par défaut et j'ai ajouté ce via presentationCountForPageViewController et presentationIndexForPageViewController. Lorsque je l'ajouter via la table de montage séquentiel comme page de contrôle transparent.
Pouvez-vous voir les points?
J'ai exactement le même problème, pourriez-vous être plus détaillé sur la façon dont vous surmonter ce problème, vous pouvez répondre à votre propre question à ce sujet
De quelle couleur est-il maintenant? Je ne pense pas que vous pouvez modifier la couleur d'arrière-plan par le biais de l'apparence, et de plus, je suppose qu'il a été transparent par défaut?
Son blanc par défaut et j'ai ajouté ce via presentationCountForPageViewController et presentationIndexForPageViewController. Lorsque je l'ajouter via la table de montage séquentiel comme page de contrôle transparent.
Pouvez-vous voir les points?
J'ai exactement le même problème, pourriez-vous être plus détaillé sur la façon dont vous surmonter ce problème, vous pouvez répondre à votre propre question à ce sujet
OriginalL'auteur sselvan | 2014-01-08
Vous devez vous connecter pour publier un commentaire.
Bon, comme mentionné par @powerj1984 et @daniellarsson UIPageControl ne semble pas être modifiables à l'égard de la position et la couleur d'arrière-plan.
J'ai donc décidé de déplacer ce UIViewController et créé un UIPageControl et
Et puis porter ce haut de mon UIPageViewController comme dans le viewDidLoad
Puis j'ai mis à jour l'index de UIPageControl dans viewControllerBeforeViewController et viewControllerAfterViewController
Merci pour la solution! Surtout travaillé pour moi... maintenant, le problème est que quand je vais revenir en arrière (je n'ai que 2 pages), il n'a pas de mise à jour de la currentPage. C'est parce qu'il n'a pas appeler
viewControllerBeforeViewController
jusqu'à ce que après il a fait de la transition, de sorte que l'indice est à 0 et la méthode sera de retour nul.ce lien est utile samwize.com/2016/03/08/...
OriginalL'auteur sselvan
travaille mais!! que vous devez définir la
backgroundColor
de laUIPageViewController
également sur[UIColor clearColor]
et que! vous verrez la backgroundcolor du conteneur de vue.OriginalL'auteur Miralem Cebic
Page de contrôle est transparent par défaut.
Vérifier avec cet exemple de code:
Vous trouverez le plus de possibilités de personnalisation ci-dessous
Apparence des Contrôles de la Page
Vous pouvez personnaliser l'apparence d'une page de contrôle en définissant les propriétés décrites ci-dessous.
Pour personnaliser l'apparence de tous les contrôles de la page dans votre application, utilisez le apparence proxy (par exemple, [UIPageControl apparence]). Pour plus d'informations sur l'apparence des procurations, voir l'Apparence des Procurations.
Teinte De Couleur
La seule façon de personnaliser l'apparence d'une page de contrôle est en réglage personnalisé teintes pour les points représentant chaque page. La Page en cours (currentPageIndicatorTintColor) champ affecte la couleur du point représentant la page actuellement affichée, et la Teinte de la Couleur (pageIndicatorTintColor) champ affecte la couleur des points représentant toutes les autres pages. La couleur par défaut est le blanc de la page en cours dot, et translucide, gris pour la page autres points.
Si vous voulez que vos couleurs personnalisées pour être translucide, vous devez spécifier une couleur avec une valeur alpha de moins de 1.0. Cela doit être fait par programmation, comme dans l'exemple suivant:
Consulter plus de détails dans UIPageControl - Développeur.La documentation d'Apple
J'ai clairement mentionné que "le contrôle de Page est transparent par défaut"
hmmm, je suis encore un noob ici, il avait un fond blanc par défaut.
De toute façon j'ai surmonté avec une autre solution que j'ai mis dans ma question
vérifier mes mises à jour de répondre et d'essayer le code. Permettez-moi de connaître le résultat. transparent fond blanc ou !!!. Elle doit être transparente.
OriginalL'auteur Shamsudheen TK
De Xcode 6.1.1 et iOS 8.1.1, je sais que la définition de la couleur d'arrière-plan d'un UIPageControl objet de la couleur claire a travaillé pour moi.
OriginalL'auteur Audible
J'ai enfin trouvé une solution pour ce problème dans Swift. Vous pouvez trouver l'original du code-réponse dans ce lien.
Il vous oblige à remplacer la viewDidLayoutSubviews() afin d'apporter la page de contrôle à l'avant de l'afficher.
OriginalL'auteur Juan Ariza
Ça pourrait fonctionner si vous définissez la couleur d'arrière-plan de la
UIPageControl
à un image d'arrière-plan qui a la même apparence que votre cv couleur d'arrière-plan:OriginalL'auteur user5970061
Voici la réponse avec l'extension de Juan Ariza
OriginalL'auteur Illya Krit
Essayez ceci:
[[self contrôle pagecontrol] setBackgroundColor:[UIColor clearColor]]; a fonctionné pour moi que de Xcode 6.1.1. Juste pour info pour ceux qui recherchent une solution sur la façon de définir la UIPageControl de l'arrière-plan transparent.
OriginalL'auteur Claudia Mardegan