Saya memiliki pengontrol tampilan yang merupakan tampilan detail dari sebuah tabel. Saat Anda mengklik baris tabel, Anda akan dibawa ke tampilan detail. Tampilan detail disematkan di pengontrol navigasi sehingga ada tombol di kiri atas bilah navigasi yang mengirim Anda kembali ke tabel. Sejauh ini baik.
Sekarang saya ingin menambahkan tombol edit ke sisi kanan bilah navigasi sehingga Anda dapat mengedit tampilan detail. Rencana saya adalah ini akan menambahkan pengontrol tampilan lain secara sederhana yang memungkinkan Anda mengedit detail item. Barang standar.
Namun, ketika saya mencoba menyeret item tombol bilah dari daftar objek ke bilah navigasi, tidak akan diperlukan. Sebaliknya, ketika saya melepaskan tombol mouse, tombol bar akan tersisa di pengontrol tab bar di bagian bawah. (Skema navigasi saya mencakup tab yang berbeda dan untuk setiap tab tabel, tampilan detail, dll.)
Siapapun pernah mengalami ini sebelumnya dan dapat menyarankan apa yang saya lakukan salah atau semacam solusi untuk menambahkan item tombol bar ke sisi kanan layar navigasi. Apakah saya harus menambahkannya dalam kode?
Terima kasih atas sarannya.
sumber
Jawaban:
Saya mendapatkan masalah yang sama saat menggunakan Xcode6 dan saya perhatikan bahwa UINavigationItem ditambahkan secara otomatis untuk ViewController pertama yang Anda sematkan ke NavigationController tetapi untuk ViewControllers berikutnya, Anda harus menambahkannya secara manual sebagai berikut:
Sekarang Anda akan memiliki Tombol Bar yang menempel di bagian atas layar Anda.
Perbarui Solusinya masih berfungsi dengan XCode 7 tetapi saya ingin menambahkan foto yang lebih deskriptif. Untuk berjaga-jaga jika ada yang tidak terlalu mengenal nama standar atau teknis yang disebutkan di atas. Perhatikan panah merah di sebelah kanan, mereka mengacu pada langkah 1, langkah 2 yang disebutkan di atas. Perhatikan juga hierarki tampilan pada persegi panjang merah kiri.
sumber
self.navigationItem.rightBarButtonItem = ...
akan berfungsi. Saya menebak UINavigationController pada VC pertama memberi contoh untuk semua VC berikutnya yang didorong ke tumpukan. Namun, dengan menyeret satu item di sana secara manual, mengapa Anda tidak berakhir dengan 2 UINavigationItems di atas satu sama lain? Yang Anda seret secara manual, dan yang sudah ada dari UINavigationController?Trik jahat:
Kemudian konten akan dapat diedit dan Anda memiliki gaya yang tidak usang untuk segue.
sumber
UIBarButtonItem
pengontrol tampilan di Xcode 7.3 .Pengontrol tampilan storyboard Anda mungkin tidak memiliki file
Navigation Item
. Anda dapat menyeret satu dari perpustakaan Objek, dan menjatuhkannya pada pengontrol tampilan Anda.Anda kemudian akan dapat menarik dan melepas item tombol bar ke sisi kiri atau kanan dari bar navigasi.
sumber
saya memecahkannya. seret 'Item Navigasi' ke tampilan detail Anda. daripada yang bisa Anda seret di Item Tombol Bar.
sumber
Cara saya memperbaiki masalah ini adalah, alih-alih menyeret UINavigationController ke Storyboard dan mencoba menambahkan UIBarButtonItems ke sana, saya menyeret UITableViewController dan kemudian pergi ke
Editor-> Sematkan Dalam-> Pengontrol Navigasi
Yang memberikan hasil yang sama seperti sebelumnya, kecuali saya bisa menambahkan UIBarButtonItems ke kedua sisi bilah navigasi tanpa masalah.
sumber
Ini sebenarnya masalah xcode. Salah satu trik yang berhasil bagi saya adalah menambahkan tombol bar di VIEW FILE STRUCTURE ON THE LEFT. Termasuk menambahkan tampilan secara langsung. Semoga membantu Anda. :)
sumber
Saya pikir itu adalah bug. Saya memiliki masalah yang sama, saya memperbaiki masalah ini dengan menonaktifkan kelas ukuran, lalu mengaktifkannya.
Anda dapat menonaktifkan dan mengaktifkan kelas ukuran dalam dokumen Pembuat antarmuka.
sumber
Saya juga mengalami masalah ini, tutup dan buka kembali proyek yang berhasil untuk saya.
sumber
Saya yakin ini adalah permainan kata-kata Xcode. Saya memiliki masalah yang sama. Saya harus mengatur ulang Xcode dan menggeser penempatan hal-hal di papan cerita untuk akhirnya menyelesaikannya. Ini bekerja sekarang.
sumber
Saya pikir ini adalah bug Xcode. Di Xcode 8, ubah
segue
di storyboard sebelum pengontrol tampilan bilah tab ke semua opsinya (show detail
,present
...). Kemudian kembali keshow
. Cobalah untuk menyeret item tombol bar dan memodifikasi ubin. Ini berhasil untuk saya!sumber
Apakah Anda mencoba "membersihkan" proyek Anda? Saya tahu itu terkadang membantu saya (cukup buka "Produk"> "Bersih"). Atau, sebagai alternatif, hapus bilah navigasi dan coba lagi.
Jika menurut Anda itu adalah kesalahan pemrograman, jangan ragu untuk meneruskan kode Anda. Saya akan dengan senang hati membantu sebisa saya. :)
sumber
Anda harus mengatur ulang xCode IDE. Tutup xCode dan tulis kode di bawah ini di terminal ... Ini akan berhasil.
sumber
Masalah yang sama. Saya memiliki Pengontrol Tampilan Tabel di dalam Pengontrol Navigasi dan banyak ViewControllers mengikuti lebih jauh ke bawah rantai. Sebuah 'Item Navigasi' sedang dibuat secara otomatis untuk pengontrol tampilan root PERTAMA dan saya dapat menambahkan 'Item Tombol Bar' untuk ini tanpa masalah. Melalui Papan Cerita, seret dan lepas. Tapi itu saja. Pada Pengontrol Tampilan Tabel berikut dan pengontrol tampilan lebih lanjut, meskipun mereka berada dalam Pengontrol Navigasi awal (tombol kembali yang dibuat otomatis muncul), storyboard tidak akan mengizinkan saya menambahkan Item Tombol Bar.
Solusi Wael Showair tidak berhasil untuk saya. Item Tombol Bar tidak akan muncul.
Saya menyelesaikannya secara terprogram pada akhirnya (Swift 2.0):
Tidak diperlukan item Navigasi tambahan atau Item Tombol Bar.
sumber
Saya juga menghadapi masalah yang sama, saya dapat memperbaiki masalah ini dengan memilih opsi root view controller dan kemudian dalam matriks simulasi mengubah opsi Top bar menjadi Opaque Navigation Bar dan dapat menambahkan item di atas bilah navigasi. jawaban ini akan membantu seseorang.
sumber
Saya memiliki masalah yang sama di xcode 8. Saya harus menutup xcode dan membuka kembali proyek dan kemudian saya dapat menambahkan tombol bar ke Root Controller tanpa masalah.
sumber
Untuk XCode 8
Ada banyak jawaban disini. Saya mencoba beberapa dari mereka tetapi saya tidak bisa. Jadi saya menemukan solusi saya, cukup pilih Anda
ViewController
, buka bagian Attributes Inspector dan ubah Top Bar menjadi Opaque Navigation Bar and Boom. Anda akan melihat bilah navigasi di papan cerita Anda. Anda dapat mengubah judul atau menambahkan beberapa item. Jika Anda tidak ingin mempertahankan Buram, Anda dapat mengubah gaya ke Tereka .sumber
Di Xcode 10, saya baru saja mengubah jenis segue yang menuju ke pengontrol tampilan baru ini menjadi 'Push (deprecated)', menambahkan item navigasi seperti yang diizinkan setelah saya melakukan peralihan ini. Jika Anda beralih kembali ke jenis segue yang Anda inginkan, item navigasi akan tetap ada.
sumber
Alih-alih menyeret "Bar Button Item" ke "Navigation Controller", seret ke "Detail View Controller". Saat Anda menyematkan tampilan Detail ke "Tampilan Navigasi", "Item Navigasi" akan ditambahkan ke "Kontroler Tampilan Detail". Jika Anda menyeret "Item Tombol Bar" ke sisi kanan Item Navigasi, item tersebut akan dimasukkan di bawah "Item Tombol Bar Kanan"
sumber
seperti yang dikatakan Mark Lyons, saya menggunakan solusi yang sama.
sumber
Di Xcode 11, Anda dapat menyeret tombol ke bilah navigasi untuk membuat tombol bilah Anda.
sumber