2013-06-11 9 views
5

के रूप में एक छवि जोड़ें मेरे पास निम्नलिखित UIButton है, मैं एक दाएं कोने में एक छवि जोड़ना चाहता हूं। एक accessoryViewUIButton के अंदर एक accesory

जैसा मैं पहले से ही backgroundImage उपयोग कर रहा हूँ और मैं में 1.

2 छवियों के संयोजन से बचना चाहते हैं यह UIButton वह यह है कि एक AccesoryView की सुविधा देता है एक छवि एक PLUS है कि कहते हैं कि अंदर एक और छवि को जोड़ने के लिए संभव है बहुत दूर तक? (मैं बटन के अंदर नए छवि डालने के लिए एक तरह से करने के लिए देख रहा हूँ)

enter image description here

टिप्पणी @luisCien

मैं

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

की कोशिश की और यह इस तरह दिखता है, मैं चाहते हैं छवि के पाठ के दाईं ओर होने के लिए। enter image description here

+0

यहाँ एक बहुत ही सरल उपाय है कि बस आईबी द्वारा किया जा सकता है: [http://stackoverflow.com/ ए/11847383/5806009] (http://stackoverflow.com/a/11847383/5806009) –

उत्तर

13

बस एक subview के रूप में जोड़ने और इस तरह से अपनी coordinates..Try कुछ चुन:

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

आप UIButton की contentHorizontalAlignment संपत्ति का उपयोग करें और इस छवि को आप अब तक सही करने के लिए यह करने के लिए जोड़ स्थिति जाएगा UIControlContentHorizontalAlignmentRight के लिए सेट कर सकते हैं।

संपादित करें: @danypata आप भी UIButton की संपत्ति imageEdgeInsets उपयोग कर सकते हैं द्वारा सुझाव दिया गया है इसलिए की तरह अपने 'accessoryView' के आसपास कुछ मार्जिन छोड़ने के लिए:

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

के बारे में बाईं तरफ के पाठ और पर छवि वाले सही, मेरा मानना ​​है कि यह संभव नहीं है (कोई मुझे कृपया सही करें)। इसके लिए मैं या तो UIControl बढ़ाकर अपना खुद का कस्टम बटन बनाउंगा या UILabel जोड़ सकता हूं और इसे फ्रेम सेट कर सकता हूं (UIButton के setTitle:forState: का उपयोग करने के विपरीत) और इसे बटन के सबव्यूव के रूप में जोड़ें।

आशा है कि इससे मदद मिलती है!

+0

मैं अंदर एक नई छवि डालने का एक तरीका ढूंढ रहा हूं। –

+1

हां, यह कोई समस्या नहीं है। UIButton के लिए इसके लिए दो विधियां हैं, एक 'सेटबैकग्राउंड इमेज: फॉरस्टेट:' है और दूसरा 'सेट इमेज: फॉरस्टेट:' है। इसके लिए धन्यवाद, आप दो अलग-अलग छवियों को जोड़ सकते हैं, एक पृष्ठभूमि के रूप में और दूसरा जिसे आप चाहते हैं 'सहायक दृश्य' के रूप में। कोई टक्कर नहीं होगी – LuisCien

+0

धन्यवाद। मैंने नीचे दिए गए –