Xamarin.Forms 创建移动应用程序的基础知识 6 - Editor
简介
演示 Editor 属性。
- 在 XAML 中创建 Xamarin.Forms Editor 。
- 响应 Editor 的文本更改。
- Editor 属性简介。
创建 Editor
- 打开已有项目 AwesomeApp。
- 添加新项 EditorPage.xaml。
- 编辑 EditorPage.xaml:
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:d="http://xamarin.com/schemas/2014/forms/design"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
x:Class="AwesomeApp.EditorPage">
<ContentPage.Content>
<StackLayout Margin="20,32">
<Editor Placeholder="输入文本"
AutoSize="TextChanges" />
</StackLayout>
</ContentPage.Content>
</ContentPage>
AutoSize 设备 Editor 按内容输入自动高度 4. 编辑 App.xaml.cs:
public App()
{
InitializeComponent();
MainPage = new EditorPage();
}
- 调试 Android 上的应用:
响应 Editor 的文本更改
- 编辑 EditorPage.xaml:
<StackLayout Margin="20,32">
<Editor Placeholder="输入文本"
TextChanged="OnEditorTextChanged"
Completed="OnEditorCompleted" />
<Label Text="OldText"
TextColor="Black"/>
<Label x:Name="labOld" />
<Label Text="NewText"
TextColor="Black" />
<Label x:Name="labNew" />
<Label Text="CompletedText"
TextColor="Black" />
<Label x:Name="labCompleted" />
</StackLayout>
*使用返回或完成键完成 Editor 中的文本输入时,才会触发 Completed 事件
- 编辑 EditorPage.xaml.cs:
public void OnEditorTextChanged(object sender, TextChangedEventArgs e)
{
labOld.Text = e.OldTextValue;
labNew.Text = e.NewTextValue;
}
public void OnEditorCompleted(object sender, EventArgs e)
{
labCompleted.Text = ((Editor)sender).Text;
}
- 调试 Android 上的应用:
Editor 属性简介
- 编辑 EditorPage.xaml:
<Editor Placeholder="输入文本"
AutoSize="TextChanges"
MaxLength="300"
IsSpellCheckEnabled="false"
IsTextPredictionEnabled="false"
TextChanged="OnEditorTextChanged"
Completed="OnEditorCompleted" />
- MaxLength 限制输入长度
- IsSpellCheckEnabled 禁用拼写检查
- IsTextPredictionEnabled 禁用文本预测和自动文本预测
- 调试 Android 上的应用: