2012-02-24 10 views
8

मैं कस्टमाइज़ कर दिया है मेरी UISlider लेकिन मेरे अंगूठे छवि अजीब लग रहा है, मेरा मतलब है यह स्थिति केंद्र से गठबंधन नहीं कर रहा है:संरेखित UISlider अंगूठे छवि - ऑब्जेक्टिव-सी

enter image description here

लेकिन इस तरह होना चाहिए:

UIImage *leftTrack = [[UIImage imageNamed:@"blueTrack.png"] stretchableImageWithLeftCapWidth:3 topCapHeight:0]; 
UIImage *rightTrack = [[UIImage imageNamed:@"whiteTrack.png"] stretchableImageWithLeftCapWidth:3 topCapHeight:0]; 
[slider setThumbImage:[UIImage imageNamed:@"thumbButton.png"] forState:UIControlStateNormal]; 
[slider setMinimumTrackImage:leftTrack forState:UIControlStateNormal]; 
[slider setMaximumTrackImage:rightTrack forState:UIControlStateNormal]; 
:

enter image description here

और यहाँ कोड है

समस्या कहां हो सकती है?

संपादित करें: मुझे इस समस्या का समाधान मिला। अंगूठे छवि पृष्ठभूमि पारदर्शी था, और मैं नहीं देखा है कि अंगूठे छवि केन्द्र से गठबंधन नहीं किया गया था:

enter image description here

+0

आपका खिंचाव छवि बिल्कुल के रूप में उच्च UISlider के आंतरिक कार्यान्वयन ऐसा करना आवश्यक हो के रूप में नहीं है होने के लिए। इसे कम करने की कोशिश करें। –

+0

क्या आप मुझे दिखा सकते हैं? –

+1

अच्छी तरह से - जीआईएमपी, फ़ोटोशॉप, पेंट.net का उपयोग करें ... :) –

उत्तर

4

वहाँ दो तरीके हैं:

एफआइआर एक का उपयोग करने के लिए है

- (CGRect)trackRectForBounds:(CGRect)bounds;

या

- (CGRect)thumbRectForBounds:(CGRect)bounds trackRect:(CGRect)rect value:(float)value;

की

तरीकों जब बाहर अंगूठे जिस तरह से आप चाहते हैं

दूसरा रास्ता अपनी कलाकृति को समायोजित करने के लिए है रखना उपवर्गीकरण:

enter image description here

संबंधित मुद्दे