1

无论如何要隐藏或替换 Xamarin.ios/monotouch 上的 UIWebView 的 InputAccessoryView 吗?

4

2 回答 2

0

认为您的意思是MonoTouch.Dialog中HtmlElement的单元格附件。这种灵活性似乎没有包含在实现中,但很容易添加。

转到: MonoTouch.Dialog Github 源代码 (Elements.cs)

复制 HtmlElement 类定义(撰写本文时的第 527 到 640 行)并将其重命名为 WhatYouWantElement。修改GetCell方法:

public override UITableViewCell GetCell (UITableView tv)
{
...
static NSString hkey = new NSString ("WhateverYouWantElement"); //very important to set a unique cell reuse identifier here!
...
cell.Accessory = UITableViewCellAccessory.None;
...
}

这将创建一个没有披露指示符的单元格。重用标识符将确保与内置 HtmlElement 没有冲突。

于 2013-08-16T09:14:29.037 回答
0

您是否尝试过创建一个子类UIWebView并覆盖其InputAccessoryView属性以使其返回null

private class CustomWebView : UIWebView
     
{
            
    public override UIView InputAccessoryView
    
    {
                
        get
                  
        {
                    
            return null;
                
        }
            
    }
        
}
     

public override void ViewDidLoad()
 
{
            
    base.ViewDidLoad();

    // Perform any additional setup after loading the view, typically from a nib.            
        RectangleF frame = new RectangleF(0, 0, 200, 30);
            
            

    UITextField txfTest = new UITextField();
            
    txfTest.Frame = frame;
            
    txfTest.BorderStyle = UITextBorderStyle.RoundedRect;
            
    txfTest.Placeholder = "Click here";
            
    txfTest.EditingDidBegin += (object sender, EventArgs e) => {
                    
        // do something
            
    };

    CustomWebView webView = new CustomWebView();
            
    webView.LoadRequest(new NSUrlRequest(new NSUrl(@"http://google.com")));
            
    webView.Frame = new RectangleF(0, 100, 320, 480);
            
            
    webView.AddSubview(txfTest);            
            

    this.View.AddSubview(webView);
        
}

我尝试向 an 添加一个UITextFieldUIWebView但在聚焦后没有显示输入附件UITextField。我正在使用 iPhone 模拟器 6.1。</p>

于 2013-08-16T09:59:52.470 回答