gpt4 book ai didi

c# - 使用 MonoTouch.Dialog 时更改 TabBarController 和 NavigationController

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:23:17 24 4
gpt4 key购买 nike

我正在尝试更改导航栏 Controller 和标签栏 Controller 的颜色

我正在使用 monotouch.dialog 构建我的应用程序并具有以下代码

    public partial class AppDelegate : UIApplicationDelegate
{
// class-level declarations
UIWindow window;

//
// This method is invoked when the application has loaded and is ready to run. In this
// method you should instantiate the window, load the UI into it and then make the window
// visible.
//
// You have 17 seconds to return from this method, or iOS will terminate your application.
//
public override bool FinishedLaunching (UIApplication app, NSDictionary options)
{
// create a new window instance based on the screen size
window = new UIWindow (UIScreen.MainScreen.Bounds);

// If you have defined a view, add it here:
// window.AddSubview (navigationController.View);
CreateTabs();
// make the window visible
window.MakeKeyAndVisible ();

return true;
}

protected void CreateTabs()
{
window = new UIWindow (UIScreen.MainScreen.Bounds);

var nav = new UITabBarController ();
nav.ViewControllers = new UIViewController [] {
new HomeController("Home"),
new WhereToUseController(),
new TransactionsController(),
new SettingsController()
};

// nav.TabBarController.TabBar.BackgroundColor = UIColor.Green;
nav.CustomizableViewControllers = new UIViewController [0];
window.RootViewController = nav;
// window.BackgroundColor = UIColor.Orange;
window.MakeKeyAndVisible ();

}

我的一个 Controller 的例子

    public override void LoadView ()
{
base.LoadView ();
//TableView.BackgroundColor = UIColor.Clear;
// ParentViewController.View.BackgroundColor = UIColor.Red;
}

public HomeController (string s)
{

TabBarItem = new UITabBarItem (s, null, 1);

var root = new RootElement (s) {


new Section () {
new UIViewElement("My Caption:", view, false),
new StyledStringElement("Hello","somevalue"),
new StringElement ("Welcome back Shane"),
new ImageElement(new UIImage("Images/QR.png")),
}
};

PushViewController (new DialogViewController (root), false);
}

我应该在哪里更改颜色?允许我更改顶部和底部?

最佳答案

如果您的目标是 iOS 5(和更新的版本),那么您应该查看新的 UIAppearance 功能。它将允许您为您的应用程序设置所有类型控件的外观(一次,而不是为您创建的每个控件)。

例如调用这个

 UINavigationBar.Appearance.TintColor = UIColor.Black;
UITabBar.Appearance.TintColor = UIColor.Green;

FinishedLaunching 将使所有导航栏具有黑色背景,即使是来自 MonoTouch.Dialog 的导航栏(而不是默认的蓝色)和具有绿色背景(而不是黑色)的选项卡栏。

注意 1:在 iOS5 之前,您需要为每个控件设置 *Color 属性(这不太有趣,因为您并不总是可以访问它们).

注意 2: 您创建了 UIWindow 的新实例两次,即在 FinishedLaunching 中调用了以下内容创建标签

  window = new UIWindow (UIScreen.MainScreen.Bounds);

关于c# - 使用 MonoTouch.Dialog 时更改 TabBarController 和 NavigationController,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9442442/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com