2013-04-11 6 views
14

की UITextField में प्लेसहोल्डर टेक्स्ट को गलत तरीके से ग़लत किया गया है, मैं उपस्थिति प्रॉक्सी के माध्यम से UISearchBar के फ़ॉन्ट को कस्टमाइज़ करने का प्रयास कर रहा हूं। यह काम करता है, लेकिन किसी भी तरह, प्लेसहोल्डर पाठ लंबवत केंद्रित नहीं है। मैंने ऊर्ध्वाधर संरेखण संपत्ति सेट करने की कोशिश की; प्लेसहोल्डर टेक्स्ट केंद्रित हो जाएगा लेकिन दर्ज किया गया टेक्स्ट केंद्र रेखा से थोड़ा नीचे होगा ... क्या इसे ठीक करने का कोई तरीका है?UISearchBar

संपादित करें:

[[UITextField appearanceWhenContainedIn: [UISearchBar class], nil] 
           setFont: [UIFont customFontWithSize: 17]]; 

placeholder text

normal text

+0

आप प्लेसहोल्डर को कैसे सेट कर रहे हैं ??? – Kasaname

+0

उस कोड को दिखाएं जिसका उपयोग आप उपस्थिति और प्लेसहोल्डर को सेट करने के लिए कर रहे हैं –

+0

http://stackoverflow.com/questions/5526047/uisearchbar-display-bug-text-too-far-left-overlapping-the-magnifying-glass- ico – iPatel

उत्तर

0

आप Searchbar अंदर पाठ फ़ील्ड के संरेखण निर्धारित करने की आवश्यकता: कोड मैं कस्टम फ़ॉन्ट को जोड़ने के लिए इस्तेमाल किया। UISearch बार के सबव्यू से टेक्स्टफ़ील्ड प्राप्त करें और बस अपना संरेखण केंद्र पर सेट करें। नीचे नमूना कोड का प्रयास करें।

- (void)viewDidLoad 
{ 
    for (UITextField *txt in _searchbar.subviews) { 
     if ([txt isKindOfClass:[UITextField class]]) { 
      [txt setTextAlignment:NSTextAlignmentCenter]; 
     } 
    } 
    [super viewDidLoad]; 
    // Do any additional setup after loading the view, typically from a nib. 
} 

यहां _searchbar UISearchBar का आउटलेट है।

0
- (void)viewDidLoad 
{ 

    for (UITextField *txt in search.subviews) { 
     if ([txt isKindOfClass:[UITextField class]]) { 
      txt.font = [UIFont fontWithName:@"Arial-BoldMT" size:17]; 
      txt.contentVerticalAlignment = UIControlContentVerticalAlignmentFill; 
     } 
    } 

    [super viewDidLoad]; 

} 

एक बार इस कोड का प्रयास करें।

1

जब भी यह मेरे साथ होता है, तो आमतौर पर UIAppearance में कुछ संशोधन के कारण UISearchBar के साथ अच्छी तरह से मिश्रण नहीं होता है। आपके द्वारा किए गए किसी भी पिछले हैक्स को देखें और शायद एक समय में उन्हें एक बार टिप्पणी करने का प्रयास करें।

मेरे विशेष मामले में यह वास्तव में टेक्स्ट विशेषता में NSForegroundColor में एक संशोधन था, इसलिए यह गलत संरेखण आपके फ़ॉन्ट परिवर्तन से असंबंधित हो सकता है।