如何在monotouch / Xamarin.Ios中添加键盘上方的子视图?

时间:2013-08-19 20:15:02

标签: c# iphone ios uiview xamarin.ios

如何在monotouch / Xamarin.Ios中在键盘顶部添加UIView?

我尝试过以下但是似乎没有用。

UIApplication.SharedApplication.Delegate.Window.AddSubview (myView);
UIApplication.SharedApplication.Delegate.Window.BringSubviewToFront (myView);

UIView被添加到键盘后面。

在Objective c中我能够使用以下代码并且它有效。

[[[[UIApplication sharedApplication] windows] objectAtIndex:1] addSubview:myView];

谢谢。

2 个答案:

答案 0 :(得分:0)

首先,您需要在与状态栏相同的级别创建新的UIWindow。您可以将此代码放在ViewDidLoad覆盖中:

newWindow = new UIWindow (UIScreen.MainScreen.Bounds);
newWindow.WindowLevel = UIWindow.LevelStatusBar;

然后将您的View(在本例中为一个按钮)添加到新的UIWindow:

var uIButton = new UIButton (UIButtonType.InfoDark) {
    Frame = new RectangleF (10, 400, 30, 30)
};
newWindow.AddSubview (uIButton);

在UITextField中,为EditingDidBegin

添加一个事件侦听器
MyInput.EditingDidBegin += (object sender, EventArgs e) => {
    newWindow.Hidden = false;
};

答案 1 :(得分:0)

这适合我。

UIApplication.SharedApplication.Windows[1].AddSubview(myView);