Xamarin формирует ярлык, выходящий из View Inside StackLayout - PullRequest
0 голосов
/ 08 февраля 2019

Я пытаюсь поместить метку в стек стека ... Количество строк может меняться в зависимости от данных ... Но когда текст больше, метка выходит из поля зрения, она не расширяется ..

<StackLayout Orientation="Vertical" 
                              BackgroundColor="White"
                              VerticalOptions="FillAndExpand"
                      Spacing="0"> 

                <StackLayout Orientation="Vertical" BackgroundColor="Silver"
                             HeightRequest="45">
                    <AbsoluteLayout BackgroundColor="White"
                HorizontalOptions="FillAndExpand"
                HeightRequest="44"
                                    Margin="0.5"
                VerticalOptions="StartAndExpand"
                >
                  <Label Text="Objective"
                         Margin="15,0,0,0"
                         AbsoluteLayout.LayoutBounds="0,0.5,-1,-1" 
                    AbsoluteLayout.LayoutFlags="PositionProportional"
                         VerticalTextAlignment="Center"
                         FontFamily="Roboto#300" FontSize="16" FontAttributes="None" TextColor="#FF888888" />

                    <Button HeightRequest="32" Margin="0,0,15,0"
                             WidthRequest="32"
                            Padding="0"

                            x:Name="ObjectiveButton"
                            Clicked="Objective_Button_Handle_Clicked"
                      BackgroundColor="Transparent"
                              AbsoluteLayout.LayoutBounds="1,0.5,-1,-1" 
                        AbsoluteLayout.LayoutFlags="PositionProportional"
                            Image="collapseIcon.png"/>




                  </AbsoluteLayout>

                </StackLayout>


                <StackLayout Orientation="Vertical"
                             BackgroundColor="White"
                             x:Name="ObjectiveStackLayout"
                             VerticalOptions="CenterAndExpand"

                             IsVisible="true" >

                   <Label Text="Lorem ipsum dolor sit amet, consectetur adipisicing elit, 
                            sed do eiusmod tempor incididunt ut
                            labore et dolore magna aliqua.
                            Ut enim ad minim veniam, 
                            quis nostrud exercitation ullamco
                            laboris nisi ut aliquip ex ea
                            commodo consequat."
                          FontFamily="Roboto#400"
                          FontSize="14"
                          VerticalTextAlignment="Center"
                           Margin="15,10,0,0"
                          MaxLines="0"
                          LineBreakMode="WordWrap"
                          FontAttributes="None"
                          TextColor="#FF858585" />




                </StackLayout>

                </StackLayout>

Ответы [ 2 ]

0 голосов
/ 08 февраля 2019

Итак, в конце концов я решил эту проблему с помощью Grid ... Вместо того, чтобы принимать корневое представление в качестве StackLayout, я принял его в качестве Grid.Если мы установим свойство Auto для высоты строки. Размер метки будет определяться на основе ее содержимого.

0 голосов
/ 08 февраля 2019

То, что вы спрашиваете, - это поведение метки по умолчанию в стеке, при условии, что вы разрешаете это.

Я не понимаю, что вы пытаетесь сделать с MaxLines, здесь вы спрашиваете 0 строкатекст, отображаемый в вашем ярлыке, вообще ничего не должен отображаться.

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

Любой из нихили я не понял, что вы пытаетесь сделать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...