2016-04-18 13 views
8

मैं नेविगेशन पट्टी में एक सही बटन जोड़ने के लिए एक सवाल ..नेविगेशन बार में दायां बटन कैसे जोड़ें?

है मैं दो बार देखा गया है: देखें एक और दृश्य B

मैं एक देखने के लिए एक नेविगेशन पट्टी जोड़ने के लिए, के बाद मैं self.navigationController!.pushViewController इस्तेमाल किया दृश्य दिखाने के लिए बी

जो दृश्य बी के नेविगेशन बार के बाईं ओर एक बैक बटन दिखाता है, यह अच्छा है। लेकिन अब मैं दृश्य बी के नेविगेशन बार के दाईं ओर एक बटन जोड़ना चाहता हूं .. मैंने कुछ उत्तरों की कोशिश की है, लेकिन यह काम नहीं करता है ... मैंने जवाबों की कोशिश की है: 1) https://www.hackingwithswift.com/example-code/uikit/how-to-add-a-bar-button-to-a-navigation-bar 2) http://blog.apoorvmote.com/add-multiple-bar-button-item-navigation-bar/?lang=fr

क्या आप मेरी मदद कर सकते हैं, धन्यवाद!

उत्तर

21

की स्विफ्ट संस्करण:

UIBarButtonItem *rightButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"Title" 
                    style:UIBarButtonItemStyleDone 
                    target:self 
                    action:@selector(rightButtonAction:)]; 
self.navigationItem.rightBarButtonItem = rightButtonItem; 
+1

अपने जवाब के लिए धन्यवाद, मैं 'जाने rightBtn = UIBarButtonItem (शीर्षक का जवाब निधि है:" भेजें ", शैली:।सादा, लक्ष्य: स्वयं, कार्रवाई: "भेजें:") self.navigationItem.setRightBarButtonItem (दाएं बीटीएन, एनिमेटेड: सच) 'मुझे पता है कि मैं ऐसा करने के लिए XIB का उपयोग कर सकता हूं, लेकिन मुझे नहीं लगता कि दाएं बटन की स्थिति क्यों नहीं है XIB के साथ ही, इसलिए मैं ऐसा करने के लिए कोड का उपयोग करता हूं – user2262304

4

आप अपने बी नियंत्रक की viewDidLoad विधि में निम्न कोड जोड़ सकते हैं।

-(IBAction)flipView 
0

viewDidLoad विधि

UIBarButtonItem *flipButton = [[UIBarButtonItem alloc] 
           initWithTitle:@"Flip"            
           style:UIBarButtonItemStyleBordered 
           target:self 
           action:@selector(flipView:)]; 
self.navigationItem.rightBarButtonItem = flipButton; 

यह शीर्षक फ्लिप, जो प्रणाली को बुलाती साथ दाहिने हाथ की ओर करने के लिए एक बटन जोड़ता में कोड के नीचे जोड़ें वहन बाबायन का जवाब, जैसा कि आप इस भाषा का उपयोग करते हैं, है:

let rightButtonItem = UIBarButtonItem.init(
     title: "Title", 
     style: .Done, 
     target: self, 
     action: "rightButtonAction:" 
) 

self.navigationItem.rightBarButtonItem = rightButtonItem 

निम्न विधि स्वयं पर बुलाया जाएगा:

func rightButtonAction(sender: UIBarButtonItem) 

ध्यान दें कि यह सब रेखांकन एक स्टोरीबोर्ड का उपयोग कर सेट किया जा सकता है, अपने नेविगेशन आइटम और राइट क्लिक एक सेट करने के लिए करने के लिए एक बार बटन आइटम खींचकर को लक्षित कार्रवाई।


स्विफ्ट 3 के बाद से एक छोटा सा अद्यतन और 4 बाहर हैं: संकलक अब चयनकर्ता नाम जांच कर सकते हैं, लिखने की त्रुटियों को रोकने जब प्रोग्राम के लक्ष्य कार्रवाई की स्थापना। तो एक सच में उपयोग करना चाहिए:

let rightButtonItem = UIBarButtonItem.init(
     title: "Title", 
     style: .Done, 
     target: self, 
     action: #selector(rightButtonAction(sender:)) 
) 
2
- (void)viewDidLoad { 

    [super viewDidLoad]; 
    UIBarButtonItem *rightBtn = [[UIBarButtonItem alloc]initWithTitle:@"Right Button" style:UIBarButtonItemStyleDone target:self action:@selector(rightBtnClick)]; 
    self.navigationItem.rightBarButtonItem = rightBtn; 
} 

-(void)rightBtnClick{ 
    // code for right Button 

} 
0

स्विफ्ट कोड एक नेविगेशन पट्टी बटन आइटम जोड़ने के लिए:

विधि 1 (जब आप चाहते उपयोग बार बटन प्रणाली आइटम)

navigationItem.leftBarButtonItem = UIBarButtonItem(barButtonSystemItem: .add, target: self, action: #selector(addTapped)) 

विधि 2 (जब आप बटन पर अपना शीर्षक देना चाहते हैं)

navigationItem.rightBarButtonItem = UIBarButtonItem(title: "Add", style: .plain, target: self, action: #selector(addTapped)) 

आईओएस 5 के बाद, यह आपको नेविगेशन बार के दोनों तरफ 1 से अधिक बटन जोड़ने की अनुमति देता है। कुछ इस तरह:

let add = UIBarButtonItem(barButtonSystemItem: .add, target: self, action: #selector(addTapped)) 
let display = UIBarButtonItem(title: "Display", style: .plain, target: self, action: #selector(playTapped)) 

navigationItem.rightBarButtonItems = [add, display] 
संबंधित मुद्दे