C# 向monotouch.dialog视图添加背景图像

C# 向monotouch.dialog视图添加背景图像,c#,ios,xamarin.ios,monodevelop,monotouch.dialog,C#,Ios,Xamarin.ios,Monodevelop,Monotouch.dialog,我正在尝试使用MonoTouch和MonoTouch.Dialog构建一个应用程序 我真的很喜欢dropbox设计欢迎视图的方式。当应用程序第一次打开时,您会看到一个类似 这与我需要做的相似。我首先需要检查我的用户是否是该产品的新用户或已拥有帐户 他们的欢迎屏幕在我看来就像一个导航控制器(如果我错了,请原谅) 我希望能够将我的企业徽标添加到类似于Dropbox的视图中,并在视图底部添加导航按钮 MonoTouch.Dialog可以这样做吗 通常,应通过添加UIImageVIew作为子视图来设置

我正在尝试使用MonoTouch和MonoTouch.Dialog构建一个应用程序

我真的很喜欢dropbox设计欢迎视图的方式。当应用程序第一次打开时,您会看到一个类似

这与我需要做的相似。我首先需要检查我的用户是否是该产品的新用户或已拥有帐户

他们的欢迎屏幕在我看来就像一个导航控制器(如果我错了,请原谅)

我希望能够将我的企业徽标添加到类似于Dropbox的视图中,并在视图底部添加导航按钮


MonoTouch.Dialog可以这样做吗

通常,应通过添加UIImageVIew作为子视图来设置复杂背景视图。否则,对于Dropbox,它们使用的是重复模式图像:

public class MyDialogViewController : DialogViewController {

    public MyDialogViewController (RootElement root) 
        : base (root) {
    }

    public override void LoadView () {
        base.LoadView ();
        this.TableView.BackgroundColor = UIColor.Clear;
        var background = UIImage.FromFile ("background.png");
        ParentViewController.View.BackgroundColor = UIColor.FromPatternImage(background);
    }

我想Anuj回答了大部分问题-除了徽标部分。你可能想要一个像他建议的那样漂亮的渐变背景(并且应该得到;-)的认可

从那里可能更容易创建一个透明(背景)徽标,并将其添加到背景之上。为此,您可以在将要使用的
对话框viewcontroller
内的
表视图中添加
UIImage

还有很多其他方法可以做到这一点。这一个确保您的MT.D元素将显示在您的徽标所在的
TableHeaderView

下面是一个在标题中添加图像的快速(非常脏)示例代码:

    public override bool FinishedLaunching (UIApplication app, NSDictionary options)
    {
       var root = new RootElement ("Welcome to MonoTouch") {
            new Section (String.Empty) {
                new StyledStringElement ("I'm already a MonoTouch user") {
                    Accessory = UITableViewCellAccessory.DisclosureIndicator
                },
                new StyledStringElement ("I'm new to MonoTouch") {
                    Accessory = UITableViewCellAccessory.DisclosureIndicator
                }
            }
        };

        var dv = new DialogViewController (root) {
            Autorotate = true
        };
        var data = NSData.FromUrl (new NSUrl ("https://github.com/xamarin/monotouch-samples/blob/master/AVCaptureFrames/Images/Icons/114_icon.png?raw=true"));
        var logo = UIImage.LoadFromData (data);
        dv.TableView.TableHeaderView = new UIImageView (logo);
        navigation.PushViewController (dv, true);               

        window.MakeKeyAndVisible ();

        // On iOS5 we use the new window.RootViewController, on older versions, we add the subview
        if (UIDevice.CurrentDevice.CheckSystemVersion (5, 0))
            window.RootViewController = navigation; 
        else
            window.AddSubview (navigation.View);

        return true;
    }

Hi@Anuj如何将按钮对齐到视图底部?对我来说,这在任何iPad(模拟器、真实设备、视网膜和非视网膜)上都不起作用。有什么想法吗?还有,试着在你按下另一个按钮后回到屏幕上,对话框就看不见了。必须将代码移动到
视图将出现