Xamarin Border-Radius AppCompat
Scheint es, dass die BorderRadius-Attribut ist nicht zu arbeiten, wenn darunter AppCompat in das Projekt.
Ich habe versucht, erstellen Sie eine benutzerdefinierte render wie diese diskutiert hier, aber es hat nicht funktioniert:
namespace Xamarin.Forms
{
public class CustomButton : Button
{
public CustomButton():base()
{
}
protected override void OnParentSet()
{
base.OnParentSet();
}
}
}
In das Android-Projekt:
[assembly: ExportRenderer(typeof(CustomButton), typeof(CustomButtonRenderer))]
namespace CalculateurMadelin.Droid.Renderers
{
public class CustomButtonRenderer : Xamarin.Forms.Platform.Android.AppCompat.ButtonRenderer
{ }
}
Du musst angemeldet sein, um einen Kommentar abzugeben.
Laden Sie ein Android -
drawable
in Ihre custom-renderer definieren, den hintergrund IhresAppCompat.Button
:Hinzufügen eines neuen
Resources/Drawable
mit dem Namen übereinstimmt, die Sie verwenden in IhremSetBackgroundResource
(ich.e..CustomButtonBackground.axml
), in diesem ich bin Einstellung einer Ecke radius des Rechtecks als10dp
:Stimmt, custom Renderer für den Button (und auch Picker, Schalter, Rahmen etc.) nicht genannt mit AppCompat.
Link mit der Untersuchung:
https://forums.xamarin.com/discussion/comment/180130/#Comment_180130
Link ist die Beschreibung einer Lösung:
http://www.isosoft.org/taoffi/post/2016/03/26/Xamarin-forms-so-you-lost-your-rounded-buttons
(link korrigiert-Fehler)
Der sauberere Weg ist, um Erben eine Taste und das setup eine benutzerdefinierte renderer für geerbte Kontrolle.