2017-05-02 27 views
20

Tablo ayarları sayfamda satırlar oluşturmak için ViewCell kullanıyorum. Açık veya Koyu bir tema seçmek için bir ayarım var. Ben ışık temaya karanlık geçiş zamanXamarin Formlarında ViewCell ayırıcı çizgisini kısmen nasıl kesebilirim?

<ViewCell Height="50"> 
    <StackLayout x:Name="darkTheme" VerticalOptions="FillAndExpand" Padding="20,0,20,0"> 
     <StackLayout Orientation="Horizontal" VerticalOptions="CenterAndExpand"> 
      <Label Text="Dark" XAlign="Center" FontSize="15"/> 
      <Label x:Name="darkThemeCheckmark" Text="{x:Static local:FontAwesome.FACheck}" FontFamily="FontAwesome" XAlign="Center" IsVisible="false" FontSize="12" HorizontalOptions="EndAndExpand"/ 
     </StackLayout> 
    </StackLayout> 
</ViewCell> 
<ViewCell Height="50"> 
    <StackLayout x:Name="lightTheme" VerticalOptions="FillAndExpand" Padding="20,0,20,0"> 
     <StackLayout Orientation="Horizontal" VerticalOptions="CenterAndExpand"> 
      <Label Text="Light" XAlign="Center" FontSize="15"/> 
      <Label x:Name="lightThemeCheckmark" Text="{x:Static local:FontAwesome.FACheck}" FontFamily="FontAwesome" XAlign="Center" IsVisible="false" FontSize="12"/> 
     </StackLayout> 
    </StackLayout> 
</ViewCell> 

, ben kurtulmak için görünmüyor olabilir benim Sıralar arasında sol tarafında soluk ışık çizgi vardır.

tableView.LayoutMargins = new UIEdgeInsets() { Left = 20 }; 
cell.SeparatorInset = new UIEdgeInsets() { Left = 20 }; 
cell.LayoutMargins = new UIEdgeInsets() { Left = 20 }; 

herkes bu hat kurtulmak bilir: Ben şu belirledik benim oluşturucunuz olarak

enter image description here

enter image description here

: Aşağıdaki resimlere bakınız?

Düzenleme:

Ben aşağıda gibi bakmak istedim: Zaten bu kabul var örtmek önceden enter image description here

cevap

0

Özür ama ne aradığınız 'TableView.SeparatorInset' olduğuna inanıyoruz Bu, PCL'nizde kullandığınız xaml'den ziyade renderer'ınıza uygulanır. Bu link numaralı telefondan tablo görüntülerini şekillendirme ile ilgili belgeleri bulabilirsiniz.

E.G. soruna alacak Seperatör girinti Hareketli

TableView.SeparatorInset.InsetRect(new CGRect(4, 4, 150, 2)); 

Sana bütün tablo değiştirme ile ilgili diğer cevap yorumlarınızda belirtiniz gördü. Bunu zaten denediyseniz lütfen bize bildirin, en basit çözüm budur ancak sizin için başka seçenekler de vardır. (Onlar sadece güzel değiller).

Düzenleme: Kendi favorilerinizi değil, kendi ayırıcılarınızı oluşturarak hedeflerinize ulaşmanın bir yolu örneği, ancak ayrıştırdığınız sorunu, ayırıcı stilini tam olarak kontrol edebildiğiniz şekilde de çözebilirsiniz. Bu Link

+0

Teşekkürler. Bunu zaten denedim ama masamda yaptıkları şey sadece 'TableSection' Başlığını kaydırmak. –

+0

@iamsophia sadece 'TableView.SeparatorInset.InsetRect (yeni CGRect (4, 4, 150, 2));' Örneğin? Sadece soruyorum çünkü bu, tablolama başlığını yine de etkilememelidir. – Digitalsa1nt

+0

Bu bir değil. Bunu denedim: 'tableView.SeparatorInset = new UIEdgeInsets() {Left = 10; }; ' –

3

xamarin için acemiyorum ama this post'a göre UITableView ve UITableViewCell alt sınıflarınızda bunu yapmanız gerekir.

Umarım bu size yardımcı olacaktır. :)

İlgili konular