5
respostas

Ajustar tamanho da Letra

Olá! Estou fazendo o curso é a letra do meu emulador esta muito grande. Na propriedade "label" consigo diminuir usando o "FontSize". Porém na propriedade "SwitchCell" não estou conseguindo. No desenvolvimento web sempre temos um padrão de letra e fonte, aqui no Xamarin é a mesma coisa, se for onde posso fazer essa configuração. Vejo que no emulador do curso ficar com uma letra ideal pra mobile.

Aguardo retorno.

5 respostas

Oi Rodrigo, tudo bem?

Entendo sua frustração! Já vi alguns usuários reclamando e sugerindo essa funcionalidade. O que alguns fizeram foi contornar o problema substituindo o SwitchCell por um ViewCell contendo um Switch e um Label, e então mudando o tamanho da fonte desse Label:

      <ViewCell>
        <StackLayout Orientation ="Horizontal" >
          <Label Text="{Binding}" HorizontalOptions="StartAndExpand" Style="{DynamicResource SwitchCellStyle}"  />
          <Switch HorizontalOptions="End" />
        </StackLayout>
      </ViewCell>

O que acha? Nos avise se essa solução foi útil para você. Obrigado!

Olá, Marcelo! Eu não entendi muito bem o exemplo que você mostrou acima. Como ficaria nesse caso?

<StackLayout Padding="5">
            <TableView Intent="Settings" >
                <TableRoot>
                    <TableSection Title="Acessórios">
                        <SwitchCell Text="{Binding TextoFreioABS}"  On="{Binding TemFreioABS, Mode=TwoWay}" ></SwitchCell>
                        <SwitchCell Text="{Binding TextoArCondicionado}" On="{Binding TemArCondicionado, Mode=TwoWay}"></SwitchCell>
                        <SwitchCell Text="{Binding TextoMP3Player}"  On="{Binding TemMP3Player, Mode=TwoWay}"></SwitchCell>

                        <TextCell Text="{Binding ValorTotal}"></TextCell>
                    </TableSection>
                </TableRoot>
            </TableView>

            <Button x:Name="btnProximo" Text="Próximo" Clicked="BtnProximo_Clicked" VerticalOptions="End"></Button>
        </StackLayout>

Oi Rodrigo

O código que você postou ficaria assim:

<StackLayout Padding="5">
    <TableView Intent="Settings" >
        <TableRoot>
            <TableSection Title="Acessórios">
                <ViewCell>
                    <StackLayout Orientation ="Horizontal" >
                        <Label Text="{Binding TextoFreioABS}" HorizontalOptions="StartAndExpand" VerticalOptions="Center" Margin="10, 0, 0, 0" FontSize="Micro"/>
                        <Switch IsToggled="{Binding TemFreioABS, Mode=TwoWay}" HorizontalOptions="End" />
                    </StackLayout>
                </ViewCell>                    
                <ViewCell>
                    <StackLayout Orientation ="Horizontal" >
                        <Label Text="{Binding TextoArCondicionado}" HorizontalOptions="StartAndExpand" VerticalOptions="Center" Margin="10, 0, 0, 0" FontSize="Micro"/>
                        <Switch IsToggled="{Binding TemArCondicionado, Mode=TwoWay}" HorizontalOptions="End" />
                    </StackLayout>
                </ViewCell>
                <ViewCell>
                  <StackLayout Orientation ="Horizontal" >
                        <Label Text="{Binding TextoMP3Player}" HorizontalOptions="StartAndExpand" VerticalOptions="Center" Margin="10, 0, 0, 0" FontSize="Micro"/>
                        <Switch IsToggled="{Binding TemMP3Player, Mode=TwoWay}" HorizontalOptions="End" />
                  </StackLayout>
                </ViewCell>           
                <TextCell Text="{Binding ValorTotal}"></TextCell>
            </TableSection>
        </TableRoot>
    </TableView>

    <Button x:Name="btnProximo" Text="Próximo" Clicked="BtnProximo_Clicked" VerticalOptions="End"></Button>
</StackLayout>

Olá, Marcelo! Obrigado pela retorno, mas o componente Switch ainda ficou grande. Você acha deve ser alguma configuração no Visual Studio? Estou usando Visual Studio 2017. Vejo que já esta usando outra versão e seus componentes ficam no tamanho correto. Aguardo retorno.

Oi Rodrigo

O switch ficou do mesmo tamanho, mas o texto diminuiu:

http://prntscr.com/lok822

Veja que o atributo FontSize eu coloquei como "Micro", mas você pode user um número para diminuir a fonte, se quiser.