Wir internationalisieren eine mobile App, die mein Team entwickelt, und mir ist aufgefallen, dass der "Cancel" -Button in der SearchBar nicht übersetzt (alles andere ist gut übersetzt) - es sagt immer "Cancel" in Englisch, egal welche Sprache ich ändere der iPad-Simulator zu. Wenn ich den Text selbst einstellen kann, kann ich sicherstellen, dass er richtig internationalisiert ist. So ...Xamarin.Forms (iOS) - Wie ändert man den Text der SearchBar "Abbrechen" -Schaltfläche?
Wie ändere ich die Schaltfläche "Abbrechen" auf einem Xamarin.Forms SearchBar? Ich habe einen benutzerdefinierten Renderer ausprobiert, kann aber nicht auf die Unteransicht "Abbrechen" abzielen. This answer scheint eine großartige Arbeit zu leisten, um zu erklären, wie man das in Objective C macht, aber ich habe Probleme beim Übersetzen in C# innerhalb des Xamarin.Forms-Frameworks.
So ziemlich das genaue Setup, das ich habe - aber Ihr '.FindDescendView ... 'Vorschlag brachte mich dazu, die verfügbaren Methoden auf dem Control zu überprüfen, und ich fand' .Descendants'! Also werde ich versuchen 'UIButton cancelButton = Control.Descendants(). OfType() .FirstOrDefault();' –
jbyrd
So konnte ich den Text ändern, indem Sie Code in der 'OnElementPropertyChanged()' Methode, mit ' UIButton cancelButton = Control.Descendants(). OfType() .FirstOrDefault(); 'und dann' cancelButton.SetTitle ("Benutzerdefiniert", UIControlState.Normal); '* ABER * - Es gibt einen Fehler, wo nach dem ersten Mal Abbrechen-Schaltfläche erscheint, jedes Mal danach überlappender Text, wobei der erste Teil des benutzerdefinierten Textes ebenfalls rechts neben (als Teil von) der "x" -Schaltfläche erscheint, - so: https://snag.gy/ SiMsu5.jpg –
jbyrd