2012-03-18 10 views
45

मैं ऐप की सेटिंग्स (cogwheel) का प्रतिनिधित्व करने के लिए UIBarButtonItem बनाना चाहता हूं। वर्तमान में मैं केवल UIBarButtonItem (इंटरफ़ेस बिल्डर> विशेषता निरीक्षक> पहचानकर्ता) बनाने के लिए एक विकल्प ढूंढ सकता हूं जैसे कि "जोड़ें" (+), "संपादित करें", "हो गया", "रद्द करें" आदिआईओएस - UIBarButtonItem Identifier - "सेटिंग्स" कोगव्हील बटन बनाने के लिए विकल्प

मुझे कोई नहीं मिल रहा है एक सेटिंग (cogwheel) आइकन बनाने के लिए विकल्प। क्या इंटरफ़ेस बिल्डर या कोड के माध्यम से ऐसा करने का कोई तरीका है?

या क्या मुझे एक छवि और फिर छवि बनाना है?

+0

आपको इमेगा बनाना है। – scord

+0

@ scordova88 इस बात की पुष्टि करने के लिए बहुत बहुत धन्यवाद, मैंने अभी एक लेख देखा है जो एक कोगव्हील आर्टवर्क आकर्षित करने के लिए सिखाता है http://coreldraw.com/forums/t/25477.aspx – user1046037

उत्तर

63

यूनिकोड में कई उल्लेखनीय उदाहरण हैं जिन्हें आप आसानी से एक्सकोड में एक स्ट्रिंग घोषणा में कॉपी और पेस्ट कर सकते हैं, या यूनिकोड की बात करते समय मानक यूनिकोड स्ट्रिंग एस्केप (\ uxxxx) का उपयोग करें और आईओएस वास्तव में काफी धाराप्रवाह है (मुझे कुछ पता है चार के काफी बदसूरत हैं, लेकिन लगता है कि फिर के लिए यूनिकोड है '):

यूनिकोड वर्ण' हब के बिना गियर '(U + 26ED): http://www.fileformat.info/info/unicode/char/26ed/index.htm

यूनिकोड वर्ण' गियर '(U + 2699): http://www.fileformat.info/info/unicode/char/2699/index.htm

या एक छवि तैयार करें और UIBarButtonItem की कस्टम व्यू संपत्ति को तदनुसार सेट करें।

+0

कमाल !! अनेक अनेक धन्यवाद!! मैं टूलबार – user1046037

+0

के ढाल से मेल खाने के लिए छवि बनाने की कोशिश कर रहा हूं (सॉफ़्टवेयर ड्राइंग से इतना परिचित नहीं हूं) कोई समस्या नहीं है। एक सुंदरता यूनिकोड नहीं है? – CodaFi

+0

यूकोड अच्छा दिखता है और निश्चित रूप से एक बड़ा समय बचाता है !! एक छोटा सा संदेह मैं uibarbuttonitem के फ़ॉन्ट आकार को कैसे बढ़ा सकता हूं। – user1046037

15

लिखना CodaFi और user1046037 जवाब:

एक शीर्षक के रूप यूनिकोड चरित्र के साथ UIBarButtonItem बना रहा है।

आपको शीर्षक (initWithTitle:) शीर्षक के साथ UIBarButtonItem प्रारंभ करना है (initWithBarButtonSystemItem:)।

आप स्ट्रिंग (जैसे यूनिकोड चरित्र) के साथ कस्टम शीर्षक सेट कर सकते हैं।

आप शीर्षक का आकार बदल सकते हैं।

UIBarButtonItem *settingsButton = [[UIBarButtonItem alloc] initWithTitle:@"\u2699" style:UIBarButtonItemStylePlain target:self action:@selector(showSettings)]; 

UIFont *customFont = [UIFont fontWithName:@"Helvetica" size:24.0]; 
NSDictionary *fontDictionary = @{NSFontAttributeName : customFont}; 
[settingsButton setTitleTextAttributes:fontDictionary forState:UIControlStateNormal]; 
5

स्विफ्ट का उपयोग कर कोगवील आइकन पाने के लिए, यह सोचते हैं आप अपने नियंत्रक में आपके विचार से अपने बटन वायर्ड है, viewDidLoad() में निम्न कार्य करें। (उदाहरण: @IBOutlet var settingsButton: UIBarButtonItem!) स्वीकार किए जाते हैं जवाब में

self.settingsButton.title = NSString(string: "\u{2699}") as String 
    if let font = UIFont(name: "Helvetica", size: 18.0) { 
     self.settingsButton.setTitleTextAttributes([NSFontAttributeName: font], forState: UIControlState.Normal) 
    } 
+1

में फ़ील्ड में कॉपी करने के लिए इस तकनीक का उपयोग किया था, यह अब इमोजी -_- – aehlke

3

यह स्विफ्ट 3 और iOS 10 में मेरे लिए काम करता ...

let settingsButton = UIBarButtonItem(title: NSString(string: "\u{2699}\u{0000FE0E}") as String, style: .plain, target: self, action: #selector(settings)) 
let font = UIFont.systemFont(ofSize: 28) // adjust the size as required 
let attributes = [NSFontAttributeName : font] 
settingsButton.setTitleTextAttributes(attributes, for: .normal) 

देखें @ hazernut की टिप्पणी। स्ट्रिंग में \u{0000FE0E} जोड़ने के बिना यह एक इमोजी के रूप में दिखाई देता है और किसी भी उपस्थिति सेटिंग्स से प्रतिरक्षा है। उस स्ट्रिंग को जोड़ना ठीक करता है।

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