2010-04-20 4 views

Répondre

9

Je ne sais pas ce que vous entendez par "template'd" ... mais ....

dans le générateur d'interface, ajoutez le imageview derrière le textview, décochez la case "opaque" pour le textview.

+0

Essayer maintenant ce wkw! Si cela fonctionne votre réponse gagne! –

+0

Comment placer une imageview derrière le textview? –

+1

Si vous déposez simplement une vue d'image, vous devrez peut-être modifier l'ordre z de la vue de texte pour qu'elle soit au-dessus de l'affichage de l'image. – Ukko

-2

Si vous voulez ajouter l'image programmaticaly j'ai réussi à le faire de cette façon:

d'abord dans mon textviewViewController.h j'ai ajouté une sortie pour le UITextView.

#import <UIKit/UIKit.h> 

@interface textviewViewController : UIViewController { 
UITextView *textView; 
} 
@property (nonatomic, retain) IBOutlet UITextView *textView; 

@end 

Ensuite, dans mon .xib j'ai ajouté mon UITextView et connecté mon outlet.

Enfin dans viewDidLoad de textviewViewController.m j'ajoute l'image comme sous-vue à mon textview.

- (void)viewDidLoad { 
    [super viewDidLoad]; 
    // Change the pathForResource to reflect the name and type of your image file 
    NSString *path = [[NSBundle mainBundle] pathForResource:@"d" ofType:@"jpg"]; 
    UIImage *img = [UIImage imageWithContentsOfFile:path]; 

    UIImageView *imgView = [[UIImageView alloc] initWithImage:img]; 
    [self.textView insertSubview:imgView atIndex:0]; 
    [imgView release]; 

} 

J'ai essayé le insertSubview: atIndex: à la fois 0 et 1 avec le même résultat, mais je collerait avec 0 idicating qu'il est derrière le textview.

+1

'[self.textView insertSubview: imgView atIndex: 0];' insère l'image dans, non derrière, le textView. Utilisez '[[self.textView superview] insertSubview: imgView belowSubview: self.textView];' pour le placer derrière textView, en supposant que superview n'est pas nul. Ce dernier ne défilera pas avec le texte. Et n'oubliez pas de libérer imgView après l'avoir inséré. – drawnonward

+0

merci drawonward, vous avez raison j'ai oublié de libérer mon imgView. Puisque ceci est dans mon contrôleur de vue, imageView pourrait être inséré dans la vue principale avec un [self.view insertSubview:] mais j'ai eu l'impression que l'imageView était voulue dans le cadre du textview. – thelaws

7

Vous pouvez définir la propriété de contenu de la couche de vues de texte.

#import <QuartzCore/QuartzCore.h> 

... 

- (void) viewDidLoad { 
    [super viewDidLoad]; 
    textView.layer.contents = (id)[UIImage imageNamed:@"myImage.png"].CGImage 
} 

devrait fonctionner

Questions connexes