คำถามติดแท็ก uibarbuttonitem

UIBarButtonItem เป็นปุ่มเฉพาะสำหรับตำแหน่งบนวัตถุ UIToolbar หรือ UINavigationBar มันสืบทอดลักษณะการทำงานของปุ่มพื้นฐานจากคลาสซูเปอร์คลาสนามธรรม UIBarItem UIBarButtonItem กำหนดวิธีการเริ่มต้นและคุณสมบัติเพิ่มเติมสำหรับใช้บนแถบเครื่องมือและแถบการนำทาง มีบางวิธีในการปรับแต่งลักษณะที่ปรากฏ พร้อมใช้งานใน iOS 2.0 และใหม่กว่าใน UIKit

30
ฉันจะแสดง / ซ่อน UIBarButtonItem ได้อย่างไร
ฉันสร้างแถบเครื่องมือใน IB ด้วยปุ่มหลายปุ่ม ฉันต้องการซ่อน / แสดงปุ่มใดปุ่มหนึ่งขึ้นอยู่กับสถานะของข้อมูลในหน้าต่างหลัก UIBarButtonItem ไม่มีคุณสมบัติที่ซ่อนอยู่และตัวอย่างใด ๆ ที่ฉันเคยพบเพื่อซ่อนพวกเขาเกี่ยวข้องกับการตั้งค่าปุ่มแถบนำทางเป็นศูนย์ซึ่งฉันไม่คิดว่าฉันต้องการทำที่นี่เพราะฉันอาจต้องแสดงปุ่มอีกครั้ง (ไม่ เพื่อพูดถึงว่าถ้าฉันเชื่อมต่อปุ่มของฉันกับ IBOutlet ถ้าฉันตั้งค่าเป็นศูนย์ฉันไม่แน่ใจว่าฉันจะเอามันกลับมาได้อย่างไร)

30
การลบข้อความหัวเรื่องของ iOS UIBarButtonItem
สิ่งที่ฉันต้องการทำคือการลบข้อความออกจากปุ่ม 'ย้อนกลับ' ของ a UIBarButtonItemโดยเหลือเพียงเครื่องหมายบั้งสีน้ำเงินบนแถบนำทาง โปรดทราบว่าฉันกำลังพัฒนาสำหรับ iOS 7 ฉันได้ลองวิธีการหลายวิธีรวมถึง แต่ไม่ จำกัด เฉพาะ: นี่เป็นวิธีภาพที่ฉันไม่ชอบ (ภาพดูผิดที่): UIBarButtonItem *barBtnItem = [[UIBarButtonItem alloc]initWithImage:[UIImage imageNamed:@"iOS7BackButton"] style:UIBarButtonItemStylePlain target:self action:@selector(goToPrevious:)]; self.navigationItem.leftBarButtonItem = barBtnItem; วิธีอื่นที่ฉันลองใช้คือสิ่งนี้ซึ่งใช้ไม่ได้ (ไม่มีอะไรปรากฏ): UIBarButtonItem *barBtn = [[UIBarButtonItem alloc]init]; barBtn.title=@""; self.navigationItem.leftBarButtonItem=barBtn; สิ่งที่ฉันต้องการบรรลุคือปุ่มย้อนกลับที่พบในแอปเพลง iOS 7 ซึ่งมีเพียงรูปตัววีเดียว ขอบคุณ

25
เปลี่ยนสีของปุ่มย้อนกลับในแถบนำทาง
ฉันกำลังพยายามเปลี่ยนสีของปุ่มการตั้งค่าเป็นสีขาว แต่ไม่สามารถเปลี่ยนได้ ฉันได้ลองทั้งสองอย่างนี้แล้ว: navigationItem.leftBarButtonItem?.tintColor = UIColor.whiteColor() navigationItem.backBarButtonItem?.tintColor = UIColor.whiteColor() แต่ไม่มีการเปลี่ยนแปลงมันยังคงมีลักษณะเช่นนี้: ฉันจะทำให้ปุ่มนั้นเป็นสีขาวได้อย่างไร

29
การตั้งค่าการกระทำสำหรับปุ่มย้อนกลับในตัวควบคุมทิศทาง
ฉันพยายามเขียนทับการกระทำเริ่มต้นของปุ่มย้อนกลับในตัวควบคุมทิศทาง ฉันได้กำหนดเป้าหมายให้กับการกระทำบนปุ่มที่กำหนดเอง สิ่งที่แปลกคือเมื่อกำหนดมันแม้ว่าแอตทริบิวต์ backbutton มันไม่ได้ใส่ใจกับพวกเขาและมันก็ปรากฏมุมมองปัจจุบันและกลับไปที่ราก: UIBarButtonItem *backButton = [[UIBarButtonItem alloc] initWithTitle: @"Servers" style:UIBarButtonItemStylePlain target:self action:@selector(home)]; self.navigationItem.backBarButtonItem = backButton; ทันทีที่ฉันตั้งค่าผ่านทางleftBarButtonItemบนnavigationItemมันเรียกการกระทำของฉัน แต่แล้วปุ่มดูเหมือนรอบหนึ่งแทนการกดลูกศรกลับหนึ่ง: self.navigationItem.leftBarButtonItem = backButton; ฉันจะให้มันเรียกการกระทำที่กำหนดเองของฉันก่อนที่จะกลับไปที่มุมมองรูตได้อย่างไร มีวิธีการเขียนทับการกระทำกลับเป็นค่าเริ่มต้นหรือมีวิธีที่มักจะเรียกเมื่อออกจากมุมมอง ( viewDidUnloadไม่ทำอย่างนั้น)?


10
UIBarButtonItem ในแถบนำทางโดยทางโปรแกรม?
ฉันมองหาวิธีแก้ปัญหานี้มาระยะหนึ่งแล้ว แต่ยังไม่มีเลย เช่นทางออกเดียวคือ self.navigationItem.setRightBarButtonItem(UIBarButtonItem(barButtonSystemItem: .Stop, target: self, action: nil), animated: true) รหัสนี้จะเพิ่มปุ่มที่มีรูปภาพ "หยุด" เช่นนี้มีวิธีแก้ปัญหาอื่น ๆ ที่มี "ค้นหา" รีเฟรช "ฯลฯ แต่ถ้าฉันต้องการเพิ่มปุ่มโดยใช้โปรแกรมด้วยภาพที่ฉันต้องการล่ะ?

7
จะสร้างพื้นที่คงที่และรายการปุ่มแถบพื้นที่แบบยืดหยุ่นโดยใช้โปรแกรมได้อย่างไร?
ฉันต้องการสร้างโดยใช้UIBarButtonItemsโปรแกรมและวางรายการพื้นที่คงที่เหล่านี้ระหว่างปุ่ม

4
รูปภาพ UIBarButtonItem ควรมีขนาดใหญ่แค่ไหน?
ฉันต้องการสร้างปุ่มเรียงตามวันที่และเรียงตามตัวเลขที่กำหนดเองซึ่งฉันวางแผนจะวางในแถบนำทางเป็นปุ่มด้านขวา รูปภาพของฉันควรมีขนาดใหญ่เพียงใดเพื่อให้เต็มพื้นที่อย่างเหมาะสม - หน้าเอกสารUIBarItemไม่ได้แสดงรายการเกี่ยวกับขนาดของรูปภาพ

20
xcode / storyboard: ไม่สามารถลากปุ่มบาร์ไปที่แถบเครื่องมือที่ด้านบนได้
ฉันมีตัวควบคุมมุมมองที่เป็นมุมมองรายละเอียดของตาราง เมื่อคุณคลิกที่แถวของตารางจะนำคุณไปยังมุมมองรายละเอียด มุมมองรายละเอียดจะฝังอยู่ในตัวควบคุมการนำทางซึ่งจะมีปุ่มที่ด้านซ้ายบนของแถบนำทางที่ส่งคุณกลับไปที่ตาราง จนถึงตอนนี้ดีมาก ตอนนี้ฉันต้องการเพิ่มปุ่มแก้ไขที่ด้านขวาของแถบนำทางเพื่อให้คุณสามารถแก้ไขมุมมองรายละเอียดได้ แผนของฉันคือจะเพิ่มตัวควบคุมมุมมองอื่นที่ช่วยให้คุณแก้ไขรายละเอียดของรายการได้ สิ่งมาตรฐาน อย่างไรก็ตามเมื่อฉันพยายามลากรายการปุ่มแถบจากรายการวัตถุไปยังแถบนำทางจะไม่เกิดขึ้น แต่เมื่อฉันปล่อยปุ่มเมาส์มันจะออกจากปุ่มบาร์บนตัวควบคุมแถบแท็บที่ด้านล่าง (โครงร่างการนำทางของฉันประกอบด้วยแท็บต่างๆและสำหรับแต่ละแท็บตารางมุมมองรายละเอียด ฯลฯ ) ใครก็ตามที่พบปัญหานี้มาก่อนและสามารถแนะนำสิ่งที่ฉันทำผิดหรือวิธีแก้ปัญหาบางอย่างเพื่อเพิ่มรายการปุ่มแถบที่ด้านขวาของหน้าจอการนำทาง ต้องใส่รหัสหรือไม่? ขอบคุณสำหรับคำแนะนำใด ๆ

8
การเพิ่ม UILabel ให้กับ UIToolbar
ฉันกำลังพยายามเพิ่มป้ายกำกับในแถบเครื่องมือของฉัน ปุ่มใช้งานได้ดี แต่เมื่อฉันเพิ่มออบเจ็กต์ป้ายกำกับมันขัดข้อง ความคิดใด ๆ ? UIBarButtonItem *setDateRangeButton = [[UIBarButtonItem alloc] initWithTitle:@"Set date range" style:UIBarButtonItemStyleBordered target:self action:@selector(setDateRangeClicked:)]; UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(5, 5, 20, 20)]; label.text = @"test"; [toolbar setItems:[NSArray arrayWithObjects:setDateRangeButton,label, nil]]; // Add the toolbar as a subview to the navigation controller. [self.navigationController.view addSubview:toolbar]; // Reload the table …

9
UIBarButtonItem พร้อมรูปภาพที่กำหนดเองและไม่มีเส้นขอบ
ฉันต้องการสร้าง UIBarButtonItem ด้วยรูปภาพที่กำหนดเอง แต่ฉันไม่ต้องการให้เส้นขอบที่ iPhone เพิ่มเข้ามาเนื่องจากรูปภาพของฉันมีเส้นขอบพิเศษ เหมือนกับปุ่มย้อนกลับ แต่เป็นปุ่มเดินหน้า แอพนี้มีไว้สำหรับโครงการ inHouse ดังนั้นฉันไม่สนใจว่า Apple จะปฏิเสธหรืออนุมัติหรือชอบ :-) ถ้าฉันใช้คุณสมบัติ initWithCustomView: v ของ UIBarButtonItem ฉันสามารถทำได้: UIImage *image = [UIImage imageNamed:@"right.png"]; UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom]; [button setBackgroundImage: [image stretchableImageWithLeftCapWidth:7.0 topCapHeight:0.0] forState:UIControlStateNormal]; [button setBackgroundImage: [[UIImage imageNamed: @"right_clicked.png"] stretchableImageWithLeftCapWidth:7.0 topCapHeight:0.0] forState:UIControlStateHighlighted]; button.frame= CGRectMake(0.0, 0.0, image.size.width, image.size.height); [button …

12
เพิ่มปุ่มในแถบนำทางโดยใช้โปรแกรม
สวัสดีฉันต้องตั้งค่าปุ่มทางด้านขวาในแถบนำทางตามโปรแกรมดังนั้นถ้าฉันกดปุ่มฉันจะดำเนินการบางอย่าง ฉันได้สร้างแถบการนำทางโดยทางโปรแกรมโดย; navBar=[[UINavigationBar alloc]initWithFrame:CGRectMake(0,0,320,44) ]; ในทำนองเดียวกันฉันต้องเพิ่มปุ่มทางด้านขวาของแถบนำทางนี้ สำหรับสิ่งที่ฉันใช้ 1. UIView* container = [[UIView alloc] init]; // create a button and add it to the container UIButton* button = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, 130, 44.01)]; [container addSubview:button]; [button release]; // add another button button = [[UIButton alloc] initWithFrame:CGRectMake(160, 0, 50, 44.01)]; [container …

5
วิธีตั้งค่าการดำเนินการสำหรับ UIBarButtonItem ใน Swift
การดำเนินการสำหรับ UIBarButtonItem แบบกำหนดเองใน Swift สามารถตั้งค่าได้อย่างไร รหัสต่อไปนี้วางปุ่มในแถบนำทางได้สำเร็จ: var b = UIBarButtonItem(title: "Continue", style: .Plain, target: self, action:nil) self.navigationItem.rightBarButtonItem = b ตอนนี้ฉันต้องการโทรfunc sayHello() { println("Hello") }เมื่อสัมผัสปุ่ม ความพยายามของฉันจนถึงตอนนี้: var b = UIBarButtonItem(title: "Continue", style: .Plain, target: self, action:sayHello:) // also with `sayHello` `sayHello()`, and `sayHello():` และ.. var b = UIBarButtonItem(title: "Continue", style: .Plain, …

8
คำเตือน“ ไม่รองรับรูปแบบธรรมดาในรายการการนำทาง” ด้วยรายการปุ่มแถบที่กำหนดเองของฉัน
ฉันลากปุ่ม Round Rect ไปที่ตำแหน่งของรายการปุ่มแถบด้านขวาและตั้งค่ารูปภาพเป็นปุ่ม Round Rect ทั้งหมดทำงานได้ดียกเว้นคำเตือน "ไม่รองรับรูปแบบธรรมดาในรายการการนำทาง" แม้ว่าฉันจะเลือกรูปแบบของ Bar Button Item เป็น "Bordered" คำเตือนก็ยังคงอยู่ที่นั่น Xcode 4.2 มีอะไรบ้าง? ขอบคุณล่วงหน้า! Ps. ฉันปรับแต่งรายการปุ่มบาร์หลายรายการด้วยปุ่ม Round Rect บางครั้ง Xcode 4.2 แสดงคำเตือนเพียงรายการเดียวในรายการปุ่มบาร์บางครั้งแสดงคำเตือนในรายการปุ่มบาร์ทั้งหมด

14
วิธีแก้ไขช่องว่างของ UIBarButtonItem ซ้ายและขวาใน UINavigationBar [iOS 7]
ฉันใช้ iOS 6.1 ก่อนหน้านี้ แต่ตอนนี้ฉันได้ย้ายไปที่ iOS 7 แล้วพร้อมกับปัญหาอื่น ๆ ฉันสังเกตเห็นว่าในแถบนำทางพื้นที่ด้านซ้ายของรายการปุ่มแถบด้านซ้ายและพื้นที่ว่างด้านขวาของรายการแถบปุ่มด้านขวาค่อนข้างมาก ใน IOS 7 มากกว่า iOS 6 ฉันต้องการทราบว่ามีวิธีใดบ้างที่ฉันสามารถลดพื้นที่ว่างของรายการปุ่มแถบซ้ายและขวาในแถบนำทางได้หรือไม่? ขอบคุณล่วงหน้า.
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.