1、建立xamarin.forms项目
我这里由于机器的限制我只选安卓项目
2、在“解决方案资源管理器”的“便笺”项目中,双击“MainPage.xaml”将其打开,并在“MainPage.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:local="clr-namespace:App2"
x:Class="App2.MainPage">
<StackLayout Margin="10,35,10,10">
<Label Text="Notes"
HorizontalOptions="Center"
FontAttributes="Bold" />
<Editor x:Name="editor"
Placeholder="Enter your note"
HeightRequest="100" />
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Button Text="Save"
Clicked="OnSaveButtonClicked" />
<Button Grid.Column="1"
Text="Delete"
Clicked="OnDeleteButtonClicked"/>
</Grid>
</StackLayout>
</ContentPage>
注意:官方文档中也有此代码段,但是如果照抄会报MainPage.xaml.cs会报找不到InitializeComponent();方法的错!
原因:x:Class="App2.MainPage" 就在一句里,App2换成自己的项目名称!
此代码以声明方式定义页面,其中包含的用户界面 Label
若要显示的文本, Editor
的文本输入和两个 Button
指示应用程序保存或删除的文件的实例。 这两个 Button
实例水平放置在 Grid
中,而 Label
、Editor
和 Grid
垂直放置在 StackLayout
中。 有关创建用户界面的详细信息,请参阅用户界面中Xamarin.Forms 快速入门的深入探讨。
3、在“解决方案资源管理器”的“便笺”项目中,展开“MainPage.xaml”,然后双击“MainPage.xaml.cs”将其打开:
4、在“MainPage.xaml.cs”中,删除所有模板代码并将其替换为以下代码:
public partial class MainPage : ContentPage
{
string _fileName = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "notes.txt");
public MainPage()
{
InitializeComponent();
if (File.Exists(_fileName))
{
editor.Text = File.ReadAllText(_fileName);
}
}
void OnSaveButtonClicked(object sender, EventArgs e)
{
File.WriteAllText(_fileName, editor.Text);
}
void OnDeleteButtonClicked(object sender, EventArgs e)
{
if (File.Exists(_fileName))
{
File.Delete(_fileName);
}
editor.Text = string.Empty;
}
}
此代码定义一个 _fileName
字段,该字段引用名为 notes.txt
的文件,而该文件将便笺数据存储在应用程序的本地应用程序数据文件夹中。 如果有文件,则在执行页构造函数时读取文件并将其显示在 Editor
中。 按“保存”Button
时执行 OnSaveButtonClicked
事件处理程序,将 Editor
的内容保存到文件中。 按“删除”Button
时执行 OnDeleteButtonClicked
事件处理程序,删除该文件(前提是它存在)并删除 Editor
中的任何文本。
5、按F6生成项目
6、项目生成成功后用在安卓模拟器中调试。
申明:本人是按照官方文档做的,我这是跑的挺成功的。