Как я могу создать пользовательский интерфейс согласно динамическим вопросам? В настоящее время у меня есть жестко закодированные Вопросы и варианты. Но теперь требуется отображать динамические вопросы. Опции будут такими же, как от 1 до 5 переключателей. Но согласно списку элементов управления Xamarin Forms не существует элемента управления, подобного группе переключателей. Так как же мне этого добиться?
В настоящее время мой единственный вопрос добавлен как:
<StackLayout Margin="0,15">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="20*"/>
<ColumnDefinition Width="12*"/>
<ColumnDefinition Width="12*"/>
<ColumnDefinition Width="12*"/>
<ColumnDefinition Width="12*"/>
<ColumnDefinition Width="12*"/>
<ColumnDefinition Width="20*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="30*"/>
<RowDefinition Height="25"/>
<RowDefinition Height="20"/>
</Grid.RowDefinitions>
<Label Grid.ColumnSpan="7" Grid.Column="0" Grid.Row="0" Text="How do you rate the quality of food on offer?" VerticalTextAlignment="Center" FontFamily="SF-UI-Text-Regular" FontSize="24"/>
<Label Grid.Column="0" Grid.Row="2" Text="Bad" VerticalTextAlignment="Center" HorizontalTextAlignment="End" FontFamily="SF-UI-Text-Regular" FontSize="15"/>
<Label Grid.Column="1" Grid.Row="1" Text="1" VerticalTextAlignment="Center" HorizontalTextAlignment="Center" FontFamily="SF-UI-Text-Regular" FontSize="15"/>
<Label Grid.Column="2" Grid.Row="1" Text="2" VerticalTextAlignment="Center" HorizontalTextAlignment="Center" FontFamily="SF-UI-Text-Regular" FontSize="15"/>
<Label Grid.Column="3" Grid.Row="1" Text="3" VerticalTextAlignment="Center" HorizontalTextAlignment="Center" FontFamily="SF-UI-Text-Regular" FontSize="15"/>
<Label Grid.Column="4" Grid.Row="1" Text="4" VerticalTextAlignment="Center" HorizontalTextAlignment="Center" FontFamily="SF-UI-Text-Regular" FontSize="15"/>
<Label Grid.Column="5" Grid.Row="1" Text="5" VerticalTextAlignment="Center" HorizontalTextAlignment="Center" FontFamily="SF-UI-Text-Regular" FontSize="15"/>
<BoxView BackgroundColor="#FAFAFA" Grid.ColumnSpan="5" Grid.Column="1" Grid.Row="2"/>
<Image Grid.Column="1" Grid.Row="2" x:Name="RbtnFoodQuality1" Source="radio_button.png" HeightRequest="10" WidthRequest="10">
<Image.GestureRecognizers>
<TapGestureRecognizer Tapped="RbtnFoodQuality1Tapped" NumberOfTapsRequired="1"/>
</Image.GestureRecognizers>
</Image>
<Image Grid.Column="2" Grid.Row="2" x:Name="RbtnFoodQuality2" Source="radio_button.png" HeightRequest="10" WidthRequest="10">
<Image.GestureRecognizers>
<TapGestureRecognizer Tapped="RbtnFoodQuality2Tapped" NumberOfTapsRequired="1"/>
</Image.GestureRecognizers>
</Image>
<Image Grid.Column="3" Grid.Row="2" x:Name="RbtnFoodQuality3" Source="radio_button.png" HeightRequest="10" WidthRequest="10">
<Image.GestureRecognizers>
<TapGestureRecognizer Tapped="RbtnFoodQuality3Tapped" NumberOfTapsRequired="1"/>
</Image.GestureRecognizers>
</Image>
<Image Grid.Column="4" Grid.Row="2" x:Name="RbtnFoodQuality4" Source="radio_button.png" HeightRequest="10" WidthRequest="10">
<Image.GestureRecognizers>
<TapGestureRecognizer Tapped="RbtnFoodQuality4Tapped" NumberOfTapsRequired="1"/>
</Image.GestureRecognizers>
</Image>
<Image Grid.Column="5" Grid.Row="2" x:Name="RbtnFoodQuality5" Source="radio_button.png" HeightRequest="10" WidthRequest="10">
<Image.GestureRecognizers>
<TapGestureRecognizer Tapped="RbtnFoodQuality5Tapped" NumberOfTapsRequired="1"/>
</Image.GestureRecognizers>
</Image>
<Label Grid.Column="6" Grid.Row="2" Text="Good" VerticalTextAlignment="Center" HorizontalTextAlignment="Start" FontFamily="SF-UI-Text-Regular" FontSize="15"/>
</Grid>
</StackLayout>
Теперь я должен динамически обрабатывать событие Tapped для каждого элемента управления. Возможно ли это, если я использую viewcell и привязываю его?
Или каким-либо другим способом добиться такого рода функциональности и пользовательского интерфейса?
