2017-07-12 14 views
0

私は、Androidプロジェクトのグラデーションの背景を持つボタンのカスタムレンダリングを作成する際に問題があります。 iOSでこのコードを使用しました:ボタンの勾配の背景 - カスタムレンダラー

public class CustomButtonRenderer : Xamarin.Forms.Platform.iOS.ButtonRenderer 
    { 
     public override void LayoutSubviews() 
     { 
      foreach (var layer in Control?.Layer.Sublayers.Where(layer => layer is CAGradientLayer)) 
       layer.Frame = Control.Bounds; 
      base.LayoutSubviews(); 
     } 

     protected override void OnElementChanged(ElementChangedEventArgs<Button> e) 
     { 
      base.OnElementChanged(e); 

      if (e.OldElement == null) 
      { 
       var gradient = new CAGradientLayer(); 
       gradient.CornerRadius = Control.Layer.CornerRadius = 10; 
       gradient.Colors = new CGColor[] 
       { 
        UIColor.FromRGB(51, 102, 104).CGColor, 
        UIColor.FromRGB(51, 202, 204).CGColor 
       }; 
       var layer = Control?.Layer.Sublayers.LastOrDefault(); 
       Control?.Layer.InsertSublayerBelow(gradient, layer); 
      } 
     } 
    } 

Androidで同じことをするにはどうすればよいですか?問題は...ウルアンドロイドのコードを投稿いただきまし

+0

リンクの下に有用であるかもしれませんか? – PN10

+0

答えを確認しましたか?それはあなたの問題を解決するのですか? –

答えて