그래서 나는 XAML에 다음 코드를 가지고 :stacklayout의 탭 영역을 확장하여 뷰 셀의 높이를 차지하는 방법은 무엇입니까?
내 C# 코드에서<TableView Intent="Settings">
<TableRoot>
<TableSection Title="Card Front Side">
<ViewCell>
<StackLayout x:Name="englishSide" Padding="20,0,20,0"
BackgroundColor="Red"
Orientation="Horizontal" VerticalOptions="Center">
<Label Text="English" XAlign="Center"/>
<Image x:Name="englishImage" Source="check.png"
HorizontalOptions="EndAndExpand" IsVisible="false" />
</StackLayout>
</ViewCell>
</TableSection>
</TableRoot>
</TableView>
나는 탭 이벤트 처리하기 위해 다음과 같은 코드를 가지고 : 나는 눈치 행에 탭하면 이제
englishSide.GestureRecognizers.Add(new TapGestureRecognizer
{
NumberOfTapsRequired = 1,
Command = new Command(() =>
{
englishImage.IsVisible = true;
App.Database.UpdateSettings((int)Lang.English, "CardFrontSide");
})
});
을 즉시 내 탭에 응답하지 않습니다. 그 다음 탭핑 이벤트가 적용될 수있는 영역이 아래 이미지 (빨간색 배경이있는 영역)에 표시된 것처럼 행의 전체 높이를 차지하지 않는다는 것을 깨달았습니다.
사람이 제가가 ViewCell의 높이를 변경하지 않고 전체 행/ViewCell 높이를 점유 할 수있는 방법을 알려 수 있습니까? 감사합니다
감사 @Thibault :
CenterAndExpand
작동하지 않는 경우, 당신은 당신의 상하 중앙에 텍스트를 유지 그래서
FillAndExpand
와 다른StackLayout
에VerticalOptions="Center"
와StackLayout
을 포장 할 수있다. 그러나 이것은 효과가없는 것 같습니다. 바깥 쪽의'StackLayout'에있는'FillAndExpand'는'ViewCell'의 높이를 차지하는 트릭을합니다. 그러나 문제는 'VerticalOptions = "Center"가 작동하지 않는 내부 StackLayout입니다. 텍스트가 더 이상 가운데에 있지 않습니다. –@iamsophia에 사과합니다. 코드를 테스트하지 않았습니다. :) 이제 테스트 해 보았습니다. 당신이 변경해야 할 유일한 것은'Center'에서'CenterAndExpand'까지 내부 StackLayout의'VerticalOptions'입니다. –