Bilah Navigasi WeChat
WXNavigationBar
tersedia melalui CocoaPods. Untuk menginstalnya, cukup tambahkan baris berikut ke Podfile Anda:
use_frameworks !
pod ' WXNavigationBar ' , ' ~> 2.3.6 '
Carthage adalah manajer ketergantungan terdesentralisasi yang membangun ketergantungan Anda dan memberi Anda kerangka kerja biner. Untuk mengintegrasikan WXNavigationBar ke dalam proyek Xcode Anda menggunakan Carthage, tentukan di Cartfile Anda:
github alexiscn/WXNavigationBar
Swift Package Manager adalah alat untuk mengotomatisasi distribusi kode Swift dan diintegrasikan ke dalam kompiler Swift. Ini masih dalam pengembangan awal, tetapi WXNavigationBar mendukung penggunaannya pada platform yang didukung.
Setelah Anda menyiapkan paket Swift, menambahkan WXNavigationBar sebagai dependensi semudah menambahkannya ke nilai dependensi Package.swift Anda.
dependencies: [
.package(url: "https://github.com/alexiscn/WXNavigationBar.git", .upToNextMajor(from: "2.3.6"))
]
WXNavigation
membuat UINavigationBar yang sebenarnya transparan dan menambahkan tampilan sebagai bilah navigasi palsu ke pengontrol tampilan.
Bilah navigasi sebenarnya masih menangani peristiwa sentuhan, bilah navigasi palsu menangani staf tampilan, misalnya: backgroundColor, backgroundImage.
Jadi Anda menggunakan bilah navigasi seperti biasa. ketika Anda ingin menangani tampilan, Anda menggunakan WXNavigationBar
Di AppDelegate.swift
Anda
import WXNavigationBar
func application ( _ application : UIApplication , didFinishLaunchingWithOptions launchOptions : [ UIApplication . LaunchOptionsKey : Any ] ? ) -> Bool {
// ...
WXNavigationBar . setup ( )
}
Anda dapat menyesuaikan WXNavigationBar
jika diperlukan. Ada dua cara untuk mengonfigurasi WXNavigationBar: melalui WXNavigationBar.NavBar
atau melalui properti UIViewController
.
Menggunakan WXNavigationBar.NavBar
untuk mengonfigurasi WXNavigationBar
akan mempengaruhi semua pengontrol tampilan.
Di AppDelegate.swift
Anda
import WXNavigationBar
func application ( _ application : UIApplication , didFinishLaunchingWithOptions launchOptions : [ UIApplication . LaunchOptionsKey : Any ] ? ) -> Bool {
// ...
// Customize WXNavigationBar if needed (Optional)
// WXNavigationBar.NavBar.backImage = UIImage(named: "xxx")
}
Anda dapat mengonfigurasi opsi berikut:
/// Back Image for Navigation Bar
public static var backImage : UIImage ? = Utility . backImage
/// Use custom view to create back button.
/// Note: You do not need to add tap event to custom view. It's handled in WXNavigationBar.
public static var backButtonCustomView : UIView ? = nil
/// Background Image for NavigationBar
public static var backgroundImage : UIImage ? = nil
/// Background color for NavigationBar
public static var backgroundColor : UIColor = UIColor ( white : 237.0 / 255 , alpha : 1.0 )
/// Tint Color for NavigationBar
public static var tintColor = UIColor ( white : 24.0 / 255 , alpha : 1.0 )
/// Shadow Image for NavigationBar
public static var shadowImage : UIImage ? = UIImage ( )
/// Enable fullscreen pop gesture
public static var fullscreenPopGestureEnabled = false
Anda juga dapat mengonfigurasi pengontrol tampilan tertentu dengan mengganti properti yang didukung WXNavigationBar
.
Anda dapat mengonfigurasi warna latar belakang bilah navigasi.
/// Background color of fake NavigationBar
/// Default color is UIColor(white: 237.0/255, alpha: 1.0)
override var wx_navigationBarBackgroundColor : UIColor ? {
return . white
}
Anda dapat mengonfigurasi latar belakang bilah navigasi menggunakan gambar.
override var wx_navigationBarBackgroundImage : UIImage ? {
return UIImage ( named : " icons_navigation_bar " )
}
Jika Anda ingin menggunakan sistem, bilah navigasi yang sama kabur:
override var wx_useSystemBlurNavBar : Bool {
return true
}
Dengan menyetel wx_barBarTintColor
, Anda sebenarnya menyetel barTintColor
dari navigationController?.navigationBar
override var wx_barBarTintColor : UIColor ? {
return . red
}
Dengan menyetel wx_baTintColor
, Anda sebenarnya menyetel tintColor
dari navigationController?.navigationBar
override var wx_barTintColor : UIColor ? {
return . black
}
Anda dapat menentukan gambar bayangan bilah navigasi untuk pengontrol tampilan tertentu (misalnya: garis warna solid atau garis warna gradien):
override var wx_shadowImage : UIImage ? {
return UIImage ( named : " icons_navigation_bar_shadow_line " )
}
Anda dapat membuat gambar bayangan dari warna, properti ini akan menimpa wx_shadowImage
override var wx_shadowImageTintColor : UIColor ? {
return . red
}
Anda dapat menentukan gambar kembali bilah navigasi untuk pengontrol tampilan tertentu:
override var wx_backImage : UIImage ? {
return UIImage ( named : " icons_view_controller_back_image " )
}
Anda dapat menentukan tombol kembali dengan tampilan khusus:
override var wx_backButtonCustomView : UIView ? {
let label = UILabel ( )
label . text = " back "
label . textAlignment = . center
return label
}
override var wx_disableInteractivePopGesture : Bool {
return true
}
override var wx_fullScreenInteractivePopEnabled : Bool {
return false
}
override wx_interactivePopMaxAllowedDistanceToLeftEdge : CGFloat {
return view . bounds . width * 0.5
}
Berikut adalah beberapa saran penggunaan awal untuk WXNavigationBar
.
Ada beberapa cara untuk membuat bilah navigasi transparan.
wx_navigationBar . alpha = 0
wx_navigationBar . isHidden = true
override var wx_navigationBarBackgroundColor : UIColor ? {
return . clear
}
alpha danhidden membuat wx_navigationBar tidak terlihat, sedangkan backgroundColor hanya mengubah warna wx_navigationBar
Anda dapat memperbarui bilah navigasi secara dinamis, seperti memperbarui secara dinamis saat menggulir.
Lihat MomentViewController
untuk detailnya.
wx_navigationBar
adalah subkelas dari UIView, jadi Anda bisa melakukan apa saja dengan wx_navigationBar
yang bisa dilakukan dengan UIView.
Jika Anda ingin melakukan sesuatu saat pengguna mengetuk tombol kembali, Anda dapat mengganti wx_backButtonClicked
di pengontrol tampilan Anda. Misalnya, Anda dapat menampilkan peringatan ketika pengguna mengetuk tombol kembali.
override func wx_backButtonClicked ( ) {
let alert = UIAlertController ( title : " Are you sure to exit " , message : nil , preferredStyle : . alert )
alert . addAction ( UIAlertAction ( title : " OK " , style : . default , handler : { [ weak self ] _ in
self ? . navigationController ? . popViewController ( animated : true )
} ) )
alert . addAction ( UIAlertAction ( title : " Cancel " , style : . cancel , handler : { _ in
} ) )
present ( alert , animated : true , completion : nil )
}
wx_navigationBar
dapat dihamparkan saat Anda menambahkan pengontrol tampilan anak secara dinamis. Jadi, tanggung jawab Anda untuk menghadirkan wx_navigationBar
ke depan.
// addChild(controller) or addSubview
view . bringSubviewToFront ( wx_navigationBar )
WXNavigationBar berlisensi MIT. LISENSI
layanan kesehatan