Учебник по кнопке в Xamarin.Forms
Прежде чем работать с этим учебником, вы должны выполнить:
- Краткое руководство Создание первого Xamarin.Forms приложения.
- Руководство по StackLayout.
В этом руководстве описано следующее:
- Создайте Xamarin.Forms
Button
в XAML. - Реагировать на касание
Button
. - Изменять внешний вид
Button
.
С помощью Visual Studio 2019 или Visual Studio для Mac вы создадите простое приложение, демонстрирующее, как настроить Button
. На следующих снимках экрана показано готовое приложение.
Вы также будете использовать Горячую перезагрузку XAML для Xamarin.Forms, чтобы просматривать изменения пользовательского интерфейса без перестроения приложения.
Создание кнопки
Для работы с этим руководством у вас должен быть последний выпуск Visual Studio 2019 с установленной рабочей нагрузкой Разработка мобильных приложений на .NET. Кроме того, вам потребуется компьютер Mac для сборки учебного приложения на iOS. Сведения об установке платформы Xamarin см. в статье Установка Xamarin. Сведения о подключении Visual Studio 2019 к узлу сборки Mac см. в статье Связывание с Mac при разработке для Xamarin.iOS.
Запустите Visual Studio и создайте пустое приложение Xamarin.Forms с именем ButtonTutorial.
Внимание
Фрагменты кода на C# и XAML из этого руководства предполагают, что решение называется ButtonTutorial. Выбор другого имени приведет к ошибкам сборки при копировании кода из этого руководства в решение.
Дополнительные сведения о создаваемой библиотеке .NET Standard см. в разделе Структура приложения Xamarin.Forms статьи Подробное изучение кратких руководств по Xamarin.Forms.
В обозревателе решений дважды щелкните файл MainPage.xaml в проекте ButtonTutorial, чтобы открыть его. В 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" x:Class="ButtonTutorial.MainPage"> <StackLayout Margin="20,35,20,20"> <Button Text="Click me" /> </StackLayout> </ContentPage>
Этот код декларативно определяет пользовательский интерфейс для страницы, который состоит из
Button
вStackLayout
. СвойствоButton.Text
указывает текст, отображаемый вButton
.На панели инструментов Visual Studio нажмите кнопку Пуск (треугольная кнопка, похожая на кнопку воспроизведения) для запуска приложения в выбранном удаленном симуляторе iOS или эмуляторе Android.
Обратите внимание, что по умолчанию
Button
обычно занимает все выделенное для него пространство — в этом случае полную ширину своего родительского элемента (StackLayout
).В Visual Studio остановите приложение.
Обработка щелчков
В MainPage.xaml измените объявление
Button
таким образом, чтобы он установил обработчик для событияClicked
:<Button Text="Click me" Clicked="OnButtonClicked" />
Этот код задает событие
Clicked
для обработчика событий с именемOnButtonClicked
, который будет создан на следующем шаге.В обозревателе решений в проекте ButtonTutorial разверните узел MainPage.xaml и дважды щелкните файл MainPage.xaml.cs, чтобы открыть его. Затем в MainPage.xaml.cs добавьте обработчик событий
OnButtonClicked
в класс:void OnButtonClicked(object sender, EventArgs e) { (sender as Button).Text = "Click me again!"; }
При касании
Button
выполняется методOnButtonClicked
. Аргументsender
является объектомButton
, ответственным за запуск событияClicked
, и может использоваться для доступа к объектуButton
. Этот обработчик обновляет текст, отображаемый элементомButton
.Примечание.
Помимо события
Clicked
Button
также определяет событияPressed
иReleased
. Дополнительные сведения см. в разделе Нажатие и отпускание кнопки в руководстве Кнопки в Xamarin.Forms.На панели инструментов Visual Studio нажмите кнопку Пуск (треугольная кнопка, похожая на кнопку воспроизведения), чтобы запустить приложение в выбранном удаленном симуляторе iOS или эмуляторе Android. Нажмите кнопку
Button
и обратите внимание, что ее текст меняется:Дополнительные сведения об обработке нажатий кнопок см. в разделе Обработка нажатий кнопок в руководстве Кнопки в Xamarin.Forms.
Изменение внешнего вида
В MainPage.xaml измените объявление
Button
, чтобы изменить его внешний вид:<Button Text="Click me" Clicked="OnButtonClicked" TextColor="Blue" BackgroundColor="Aqua" BorderColor="Red" BorderWidth="5" CornerRadius="5" WidthRequest="150" HeightRequest="75" />
Этот код задает свойства, которые изменяют внешний вид
Button
. СвойствоTextColor
задает цвет текстаButton
, а свойствоBackgroundColor
задает цвет фона для текста. СвойствоBorderColor
задает цвет области, окружающейButton
, а свойствоBorderWidth
задает ширину границы. По умолчаниюButton
представляет собой прямоугольник, но его можно представить со скругленными углами, установив для свойстваCornerRadius
подходящее значение. Кроме того, размерButton
можно изменить, настроив его свойстваWidthRequest
иHeightRequest
.Если приложение по-прежнему работает, сохраните изменения в файле, после чего пользовательский интерфейс приложения в симуляторе или эмуляторе будет автоматически обновлен. В противном случае нажмите на панели инструментов Visual Studio кнопку Запуск (треугольная кнопка, похожая на кнопку воспроизведения), чтобы запустить приложение в выбранном удаленном симуляторе iOS или эмуляторе Android. Обратите внимание, что внешний вид
Button
изменился:В Visual Studio остановите приложение.
Дополнительные сведения о настройке внешнего вида
Button
см. в разделе Внешний вид кнопок в руководстве Кнопки в Xamarin.Forms.
Поздравляем!
Поздравляем с завершением этого учебника, где вы научились:
- Создайте Xamarin.Forms
Button
в XAML. - Реагировать на касание
Button
. - Изменять внешний вид
Button
.
Следующие шаги
Чтобы узнать больше об основах создания мобильных приложений с помощью Xamarin.Forms, перейдите к учебнику по записям.
Дополнительные ссылки
Возникла проблема с этим разделом? Если это так, отправьте нам отзыв, чтобы мы исправили этот раздел.