2013-06-11 18 views
5

Aşağıdaki UIButton'a sahibim Görüntüyü en sağa eklemek istiyorum. Bir accessoryViewUIButton içindeki bir resmi aksesuar olarak ekleyin

Sanki zaten Backgroundımage kullanıyorum ve 1.

içine 2 görüntüleri birleştirerek önlemek istiyorsanız mümkün bir AccesoryView bir PLUS sahip bir resim Diyelim olan UIButton içinde başka bir resim eklemek için mi en sağa mı?

enter image description here

açıklama @luisCien (Ben Düğme içinde yeni resim eklemek için bir yol için arıyorum) Ben

[_addImage setImage:[UIImage imageNamed:@"shareMe"] forState:UIControlStateNormal]; 
    _addImage.contentHorizontalAlignment = 
     UIControlContentHorizontalAlignmentRight; 

çalıştıysanız ve bu gibi görünüyor, ben istiyorum Resmin metnin sağ tarafında olması. enter image description here

+0

basitçe IB tarafından yapılabilir çok basit bir çözümdür: [http://stackoverflow.com/ a/11847383/5806009] (http://stackoverflow.com/a/11847383/5806009) –

cevap

13

Sadece bir subview olarak eklemek ve bu gibi coordinates..Try şey seç:

İşte
UIImageView *yourPlusSign = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"yourPlusSignImageTitle"]]; 
yourPlusSign.frame = CGRectMake(x, y, width, height);//choose values that fit properly inside the frame of your baseButton 
//or grab the width and height of yourBaseButton and change accordingly 
yourPlusSign.contentMode=UIViewContentModeScaleAspectFill;//or whichever mode works best for you 
[yourBaseButton addSubview:yourPlusSign]; 
2

Bu size en sağa ona ekleme görüntüyü konumlandırmak olacaktır UIButton ait contentHorizontalAlignment özelliğini kullanın ve UIControlContentHorizontalAlignmentRight şekilde ayarlayabilirsiniz.

Düzenleme: böylece sevdiği 'accessoryView' etrafında bazı marjı bırakmak da UIButton malına imageEdgeInsets kullanabilirsiniz @danypata önerdiği gibi:

[_addImage setImageEdgeInsets:UIEdgeInsetsMake(5, 0, 5, 10)]; 

soldaki metin ve resim üzerinde olan İlişkin Doğru, imkansız olduğuna inanıyorum (birisi lütfen beni düzeltin). Bunun için, UIControl'u genişleterek veya UILabel'u ekleyerek kendi çerçevemi oluşturabilirim ve çerçeveyi (UIButton'un setTitle:forState:'u kullanmanın aksine) ayarlayın ve düğmenin alt görünümü olarak ekleyin.

Bu yardımcı olur umarız!

+0

İçine yeni bir görüntü eklemek için bir yol arıyorum. –

+1

Evet, sorun değil. UIButton'un bunun için iki yöntemi vardır, biri 'setBackgroundImage: forState:' ve diğeri 'setImage: forState:'. Bu sayede, biri arka plan, diğeri ise 'aksesuar görünümü' olarak iki farklı resim ekleyebilirsiniz. Hiçbir çarpışma olmayacak – LuisCien

+0

Teşekkürler. Sorgumun altından daha fazla rehberlik isteyip istemediğimi sordum. –