2017-05-02 6 views
20

मैं अपने टेबल सेटिंग पेज में पंक्तियां बनाने के लिए ViewCell का उपयोग कर रहा हूं। मेरे पास लाइट या डार्क थीम चुनने की सेटिंग है।एक्समरिन फॉर्म में आंशिक रूप से व्यूसेल सेपरेटर लाइन को कैसे कटौती करें?

<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> 

जब भी मैं प्रकाश विषय के लिए अंधेरे से स्विच, वहाँ मेरी पंक्तियों है कि मैं से छुटकारा पाने के नहीं कर पा रहे के बीच बाईं ओर बेहोश प्रकाश रेखा है। नीचे दी गई छवियों को देखें:

enter image description here

enter image description here

मेरी रेंडरर में मैं निम्नलिखित की स्थापना की है:

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

किसी को भी जानता है इस लाइन से छुटकारा पाने के लिए कैसे?

संपादित करें:

मैं इसे नीचे की तरह देखना चाहता था: enter image description here

उत्तर

0

पहले से क्षमा याचना बैठाना आप पहले से ही इस पर विचार किया है, लेकिन मेरा मानना ​​है कि क्या आप देख रहे हैं 'TableView.SeparatorInset' है यह आपके पीसीएल में आपके द्वारा उपयोग किए जाने वाले xaml की बजाय आपके प्रस्तुतकर्ता पर लागू होगा। आप इस link पर तालिकादृश्यों को स्टाइल करने के आसपास प्रलेखन पा सकते हैं।

ईजी।

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

विभाजक के इनसेट चलती समस्या को हल मिल जाएगा मैं आप पूरे तालिका स्थानान्तरण अन्य जवाब की टिप्पणियों में उल्लेख देखा। कृपया मुझे बताएं कि क्या आपने पहले ही यह कोशिश की है, यह सबसे आसान समाधान है लेकिन आपके लिए अन्य विकल्प उपलब्ध हैं। (वे सिर्फ उतने अच्छे नहीं हैं)।

संपादित करें: अपने स्वयं के सेपरेटर्स बनाकर अपने लक्ष्यों को प्राप्त करने के तरीके का उदाहरण, मेरे पसंदीदा नहीं बल्कि आपके द्वारा हाइलाइट किए गए मुद्दे को भी हल करेंगे क्योंकि आप एक सेपरेटर की स्टाइल पर पूर्ण नियंत्रण रखते हैं। Link

+0

धन्यवाद। मैंने पहले ही यह कोशिश की है लेकिन यह मेरी तालिका में क्या करता है बस 'टेबलसेक्शन' शीर्षक को बदल देता है। –

+0

@iamsophia सिर्फ यह पुष्टि करने के लिए खेद है कि आपने 'TableView.SeparatorInset.InsetRect (नया CGRect (4, 4, 150, 2)) की कोशिश की है;' उदाहरण के लिए? मैं केवल इसलिए पूछता हूं, कि किसी भी तरह से tablesection शीर्षक को प्रभावित नहीं करना चाहिए। – Digitalsa1nt

+0

वह नहीं है। मैंने यह कोशिश की है: 'tableView.SeparatorInset = new UIEdgeInsets() {Left = 10; }; ' –

3

मैं xamarin के लिए नौसिखिया हूं लेकिन this post के अनुसार आपको UITableView और अपने UITableViewCell उप-वर्गों पर ऐसा करने की आवश्यकता है।

मुझे आशा है कि यह आपकी मदद करेगा। :)

संबंधित मुद्दे