2017-09-26 36 views
0

我正在尋找在ListView上創建經典圓形按鈕以添加項目。我已經完成了,通過使用AbsoluteLayout就好了。但是我遇到的問題是我無法使按鈕以圓形邊框去。無論我設定了什麼,它都保持平方。對於我所讀到的,似乎Xamarin覆蓋了邊界行爲。我不相信有沒有簡單的方法來解決這個問題。在ListView上添加項目的圓形按鈕

任何人都可以幫我解決這個問題嗎?

編輯:從來就試圖https://github.com/wilsonvargas/ButtonCirclePlugin但仍I'm與不穩定的行爲越來越按鈕:

enter image description here

<local:CircleButton 
     Text="+" 
     FontSize="Medium" 
     FontAttributes="Bold" 
     AbsoluteLayout.LayoutBounds="0.9,0.9,50,50" 
     AbsoluteLayout.LayoutFlags="PositionProportional" 
     HeightRequest="70" 
     WidthRequest="70"/> 
+0

https://github.com/wilsonvargas/ButtonCirclePlugin – Jason

+0

@Jason看到我的編輯 – NicoRiff

+0

我已經創建了這個插件,它工作正常,請檢查我的答案。 –

回答

2

這僅在6.0的Android一個問題,但它是通過將BorderRadius屬性和分配給它的相同的值按鈕的高度來解決。是這樣的:

<local:CircleButton Icon="ic_directions_bike" 
         FontSize="30" TextColor="Black" 
         HeightRequest="70" WidthRequest="70" 
         BorderRadius="70" BackgroundColor="#DCDCDC"/> 
    <!--This button is not exactly circular--> 
    <local:CircleButton FontSize="30" TextColor="Black" 
         HeightRequest="70" WidthRequest="200" 
         BorderRadius="20" BackgroundColor="#DCDCDC"/> 

enter image description here

此屬性允許您創建一個不完全的圓形,在圖像中看到的按鈕。

+0

我發現如果你禁用硬件加速,這個問題就不存在了......無論如何,我嘗試了你說的,它的工作。其他問題,你參考角度圖標像Icon =「ic_directions_bike」我可以使用其他圖標? – NicoRiff

+0

你可以在這裏找到圖標列表(https://github.com/wilsonvargas/ButtonCirclePlugin/blob/master/src/ButtonCircle/ButtonCircle.FormsPlugin.Abstractions/Icons.cs)。如果這有助於您將其標記爲答案。 –

+0

威爾遜你搖滾!感謝您的回答。如果你來阿根廷讓我知道,我們有啤酒。 Saludoscompañero。 – NicoRiff

0

enter image description here

我可以使用Xamarin獲得背景按鈕。形式。如果你正在寫Xamarin.Forms,你可以試試。

<StackLayout Orientation="Horizontal"> 
      <Image Margin="10,10" HeightRequest="50" WidthRequest="50" Source="backButton.png"> 
       <Image.GestureRecognizers> 
        <TapGestureRecognizer Tapped="btnSetting_Clicked"/> 
       </Image.GestureRecognizers> 
      </Image> 
      <Image HorizontalOptions="EndAndExpand" Margin="0,0,10,10" HeightRequest="50" WidthRequest="50" Source="settingsButton.png"> 
       <Image.GestureRecognizers> 
        <TapGestureRecognizer Tapped="btnSetting_Clicked"/> 
       </Image.GestureRecognizers> 
      </Image> 
     </StackLayout>