2017-08-23 2 views
2

Ich habe Radio-Button mit benutzerdefinierten Rendering in Xamarin implementiert. Der Radioknopf ist links ausgerichtet und der Text ist standardmäßig rechts ausgerichtet. Wie können wir die Position des Optionsfelds nach rechts ändern?Wie ändere ich die Radio Button Position in Xamarin?

XAML-Code ist unter

<StackLayout HorizontalOptions="Start" VerticalOptions="CenterAndExpand"> 
      <control:BindableRadioGroup x:Name="SortPicker" 
              TextColor="Gray" 
              CheckedChanged="OnCheckedChanged" 
              Padding="50,0,0,10" 
              WidthRequest="1100" 
              Spacing="20"> 

      </control:BindableRadioGroup> 
      </StackLayout> 

Render-Code:

protected override void OnElementChanged(ElementChangedEventArgs<CustomRadioButton> e) 
     { 
      base.OnElementChanged(e); 

      if (Control == null) 
      { 
       var radButton = new RadioButton(Context); 
       colorStateList = radButton.TextColors; 
       radButton.CheckedChange += this.RadButtonCheckedChange; 

       SetNativeControl(radButton); 
      } 

      Control?.SetPadding(30, Control.PaddingTop, 0, Control.PaddingBottom); 
      Control.Text = e.NewElement.Text; 
      Control.Checked = e.NewElement.Checked; 
      UpdateTextColor(); 

      if (e.NewElement.FontSize > 0) 
      { 
       Control.TextSize = (float)e.NewElement.FontSize; 
      } 

      if (!string.IsNullOrEmpty(e.NewElement.FontName)) 
      { 
       Control.Typeface = TrySetFont(e.NewElement.FontName); 
      } 
     } 
+2

Können Sie uns den XAML-Code/-Renderer-Code zeigen –

+0

@Jorydy: Ich habe mein Codebeispiel hinzugefügt – Melody

Antwort

0

Versuchen supportsRtl Eigenschaft auf true in der Anwendung manifestieren ermöglicht:

<application android:label="app label" android:supportsRtl="true"/> 

und die LayoutDirectionProperty der Steuerungseinstellung wie so :

Control.LayoutDirection = LayoutDirection.Rtl; 
Verwandte Themen