Xamarin.iOS
Xamarin.iOS नेविगेशन दराज
खोज…
वाक्य - विन्यास
- फ़्लायआउट नेविगेशन घटक: https://compords.xamarin.com/view/flyoutnavigation
Xamarin.iOS नेविगेशन दराज
नई Xamarin.iOS रिक्त परियोजना (सिंगल व्यू ऐप) बनाएं।
"घटक" फ़ोल्डर पर राइट क्लिक करें और "अधिक घटक प्राप्त करें" चुनें:
खोज बॉक्स प्रकार में: "फ़्लॉउट नेविगेशन" और अपने ऐप में नीचे घटक जोड़ें:
"Mono.Touch.Dialog-1" संदर्भ जोड़ने के लिए भी याद रखें:
अब प्रोजेक्ट पर क्लिक करें और "नेविगेशनड्रावरकंट्रोलर" नामक नए UIViewController जोड़ें:
अब "NavigationDrawerController" वर्ग के लिए कोड नीचे जैसा दिखना चाहिए:
public partial class NavigationDrawerController : UIViewController
{
public NavigationDrawerController(IntPtr handle) : base(handle)
{
}
public override void ViewDidLoad()
{
base.ViewDidLoad();
NavigationItem.LeftBarButtonItem = getMenuItem();
NavigationItem.RightBarButtonItem = new UIBarButtonItem { Width = 40 };
}
UIBarButtonItem getMenuItem()
{
var item = new UIBarButtonItem();
item.Width = 40;
//Please provide your own icon or take mine from the GitHub sample:
item.Image = UIImage.FromFile("Images/[email protected]");
item.Clicked += (sender, e) =>
{
if (ParentViewController is MainNavigationController)
(ParentViewController as MainNavigationController).ToggleMenu();
};
return item;
}
}
कोई चिंता नहीं है कि "MainNavigationController" को लाल रंग में हाइलाइट किया गया है - हम इसे अगले चरण में जोड़ देंगे।
- अब "Main.storyboard" फ़ाइल खोलें:
क) एक UIViewController जोड़ें:
इस नाम के साथ "क्लास" और "स्टोरीबोर्ड" फ़ील्ड भरें: "FirstViewController"
ख) इसके बाद रूट UIViewController के साथ नेविगेशन नियंत्रक जोड़ें:
इस नाम के साथ "क्लास" और "स्टोरीबोर्ड" फ़ील्ड भरें: नेविगेशन नियंत्रक के लिए "MainNavigationController"
इस नाम के साथ "क्लास" और "स्टोरीबोर्ड" फ़ील्ड भरें: रूट नियंत्रक के लिए "DetailsViewController"
Xamarin (या विज़ुअल) स्टूडियो उपरोक्त नियंत्रकों के लिए कोड-पीछे कक्षाएं बनाएगा।
- अब "FirstViewController" क्लास खोलें और कोड के नीचे पेस्ट करें:
public partial class FirstViewController : UIViewController
{
public FirstViewController (IntPtr handle) : base (handle)
{
}
public override void ViewDidLoad()
{
base.ViewDidLoad();
createNavigationFlyout();
}
void createNavigationFlyout()
{
var navigation = new FlyoutNavigationController
{
//Here are sections definied for the drawer:
NavigationRoot = new RootElement("Navigation")
{
new Section ("Pages")
{
new StringElement ("MainPage")
}
},
//Here are controllers definied for the drawer (in this case navigation controller with one root):
ViewControllers = new[]
{
(MainNavigationController)Storyboard.InstantiateViewController("MainNavigationController")
}
};
View.AddSubview(navigation.View);
}
}
"MainNavigationController" क्लास खोलें और कोड के नीचे पेस्ट करें:
public partial class MainNavigationController : UINavigationController { public MainNavigationController (IntPtr handle) : base (handle) { } //Responsible for opening/closing drawer: public void ToggleMenu() { if (ParentViewController is FlyoutNavigationController) (ParentViewController as FlyoutNavigationController).ToggleMenu(); } }
"DetailsViewController" नामक अंतिम वर्ग को इस तरह दिखना चाहिए:
public partial class DetailsViewController : NavigationDrawerController
{
public DetailsViewController (IntPtr handle) : base(handle)
{
}
}
कृपया ध्यान दें कि "DetailsViewController" का अर्थ "नेवीगेशनड्रॉकर कंट्रोलर" से है जो हमने शुरुआत में बनाया था।
बस। अब आप अपनी इच्छानुसार दराज को अनुकूलित कर सकते हैं। कृपया मेरे GitHub पर तैयार नमूना भी देखें:
https://github.com/Daniel-Krzyczkowski/XamarinIOS/tree/master/Xamarin.iOS.NavigationDrawer