2015-09-07 71 views
1

我有一个Xamarin iOS应用程序,它有文本框,所以我想让我的文本框在点击时隐藏它们的占位符,而不仅仅是当我开始输入字母时,是否有可能?Xamarin iOS点击隐藏占位符

回答

3

类似下面:

string _placeHolderText = "Some Test Placeholder..."; 

    public override void ViewWillAppear (bool animated) 
    { 
    base.ViewWillAppear (animated); 

    var textView1 = new UITextField (new CGRect (0, 0, UIScreen.MainScreen.Bounds.Width, 100)) { 
     Placeholder = _placeHolderText, 
     BorderStyle = UITextBorderStyle.Line 
    }; 
    textView1.EditingDidBegin += (object sender, EventArgs e) => 
    { 
     textView1.Placeholder = string.Empty; 
    }; 
    textView1.EditingDidEnd += (object sender, EventArgs e) => 
    { 
     textView1.Placeholder = _placeHolderText; 
    }; 

    var textView2 = new UITextField (new CGRect (0, textView1.Frame.Bottom, UIScreen.MainScreen.Bounds.Width, 100)) { 
     Placeholder = _placeHolderText, 
     BorderStyle = UITextBorderStyle.Line 
    }; 

    this.View.AddSubviews (textView1, textView2); 
    } 
+0

感谢工作示例,伙计! –

1

可能的是,您可以在文本字段开始编辑时将占位符文本设置为空字符串,并且如果结束编辑且仍然为空,则将其重置为先前值。