Как добавить ContentView к событию Click? - PullRequest
0 голосов
/ 14 апреля 2019

Мое задание - создать программу, которая отображает две кнопки, мое имя и текущее время / дату на главном экране. Цель состоит в том, чтобы при нажатии одной из кнопок отображался отрывок, который будет использовать весь экран. Пока что я создал главную страницу с ярлыками и кнопками. Однако я очень растерялся относительно того, как отобразить отрывок относительно нажатой кнопки. Я использую эмпирически подходящий текст, чтобы наилучшим образом использовать экран. Я создал страницу FontCalc.Cs и добавил метод onContentViewSizeChanged на главной странице, где у меня есть весь мой код. Я не знаю, как действовать дальше. Пока что это то, что у меня есть в моем событии обработчика кликов:

        passage1Button.Clicked += (sender, args) =>
        {
            passage.Text = "So they began working together, each squadron leader commanding indivual pilots, " +
                           "Ender comanding the squadron leaders. They learned manyw ays of working together, " +
                           "as the simulator forced them to try different situations. Sometimes the simulator " +
                           "gave them a larger fleet to work with; Ender set them up then in three or four " +
                           "toons that consisted of three or four squadrons each. Sometimes the simulator gave " +
                           "them a single starship with its twelve fighters, and he chose three sqaudron leaders. ";

            ContentView contentView = new ContentView
            {
                Content = passage
            };
            contentView.SizeChanged += onContentViewSizeChanged;

Вместо отображения прохода, когда кнопки исчезают, он останавливает только эмулятор Android и локальный компьютер UWP.

1 Ответ

0 голосов
/ 14 апреля 2019

Вы можете показать модал по нажатию кнопки

        passage1Button.Clicked += (sender, args) =>
         {
            var contentpage = new ShowTextPage("Passage text here, goes to page constructor where label is set to passed text");

            var page = new NavigationPage(contentpage);

            Navigation.PushModalAsync(page);
         }

На ShowTextPage установите HasNavigationBar в false

...