9
votes

Problème dans la taille de la taille de l'UIALERTERVIEW

bonjour J'ai une alerteView et je veux changer la taille de la propriété CGrectureMake, mais cela ne se produit pas. Il suffit de prendre la taille par défaut.

J'ai essayé du code suivant. xxx

}

Merci d'avance.


1 commentaires

Même problème pour moi. Je ne peux pas captiver la largeur et la hauteur de Uialertview. De l'aide? Merci d'avance


4 Réponses :


16
votes

Pour réaliser ce que vous voulez, dans votre code, après: xxx

ajout: xxx

Ce n'est pas joli, je suggère que je suggère Vous utilisez des feuilles d'action.


5 commentaires

Ici, je veux changer la largeur de la vue d'alerte Comment puis-je modifier cela, je suis capable de changer la hauteur mais ne sais pas comment changer de largeur.


Eh bien, ma réponse s'applique toujours, vous pouvez changer la largeur après l'appel à [Rechercher Afficher] et le résultat est toujours laid et vous devriez toujours utiliser des actes d'action.


Cela change simplement l'UIWindow pour moi (c'est-à-dire - le message de Textfield 'à l'intérieur ne redimensionne pas)


@rocell j'ai un problème similaire. Les sous-espions ne redimentent pas correctement.


@ahmetemrah. Faire la personnalisation de AlertView. Est-ce que ça va avec la règle de Apple. Je veux dire quoi d'approbation ou rejet. Puis-je personnaliser la vue d'alerte?



3
votes

Vous pouvez sous-classer l'uialertview. J'ai fait quelque chose comme ça, changez-le pour votre besoin.

fichier d'en-tête, xxx

code source, xxx / p>


0 commentaires

7
votes
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Confirmation" message:@" Submit the answer " delegate:self cancelButtonTitle:@"NO" otherButtonTitles:@"YES", nil];
[alert show];
[alert release];

UILabel *theTitle = [alert valueForKey:@"_titleLabel"];
[theTitle setTextColor:[UIColor blackColor]];

UILabel *theBody = [alert valueForKey:@"_bodyTextLabel"];
[theBody setTextColor:[UIColor blackColor]];

UIImage *theImage = [UIImage imageNamed:@"blue-white-abstract-background.jpg"];    
theImage = [theImage stretchableImageWithLeftCapWidth:10 topCapHeight:10];
CGSize theSize = [alert frame].size;

UIGraphicsBeginImageContext(theSize);    
[theImage drawInRect:CGRectMake(0, 0, theSize.width, theSize.height)];    
theImage = UIGraphicsGetImageFromCurrentImageContext();    
UIGraphicsEndImageContext();

//[[alert layer] setContents:[theImage CGImage]];
[[alert layer] setContents:[UIColor clearColor]];
This code does a lot of things to alertview and modify it to increase the size of the alert view.

0 commentaires

7
votes

Cela fait assez bien le travail et ne semble pas étrange lorsque l'alerte apparaît (la solution Ahmet Emrah a un effet secondaire assez mauvais).

CGAffineTransform myTransform = CGAffineTransformMakeScale(1.0, 0.5f);
[alert setTransform:myTransform];


1 commentaires

Nan. Cela rétrécit le contenu de la vue d'alerte, déformant le texte et tout.