フォームXamarinは、現在、私は次のXAMLを使用してリストビューを構築した細胞操作RTL
<ListView x:Name="_lstMenu" VerticalOptions="FillAndExpand" BackgroundColor="Transparent">
<ListView.ItemTemplate>
<DataTemplate>
<ImageCell Text="{Binding Title}" ImageSource="{Binding IconSource}" />
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
私は言語はアラビア語に切り替えられたときに全体のユーザーエクスペリエンスの右をしているされてやろうとしています左から右に向いています。これを行うために、私はRotateYTo(180)メソッドを使用しています。
protected override void rotateElementsY(int rotationY)
{
base.rotateElementsY(rotationY);
foreach (View sub in subviews())
{
sub.RotateYTo(rotationY);
}
}
private View[] subviews()
{
View[] _subs = new View[] {
imgUser, lblGreetings, lblUserName, lstMenu, stkBottom};
return _subs;
}
それは私が唯一の唯一の左から右方向にそれを表示することができるよとImageCellを除いて、これまでのところうまく機能、およびセルのチャイルズ(ラベル、イメージ)のいずれかを回転させることができません。
PS:リストビューをミラーリングした後、逆のセルのアラビア語テキストを書き込もうとしましたが、まだ適切ではありません。
<ListView
x:Name="_lstMenu"
BackgroundColor="Transparent"
VerticalOptions="FillAndExpand">
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="4*" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Label
HorizontalTextAlignment="End"
Text="{Binding Title}"
VerticalTextAlignment="Center" />
<Image Grid.Column="1" Source="{Binding Image}" />
</Grid>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
私はこれがことを願って: