Android - OnDraw nicht in dynamisch eingefügt benutzerdefinierte Ansicht aufgerufen wird

StackOverflow https://stackoverflow.com/questions/4358605

  •  08-10-2019
  •  | 
  •  

Frage

Ich habe eine benutzerdefinierte Ansicht dynamisch eingefügt werden und die onDraw wird nicht aufgerufen werden. Ich habe zunächst die benutzerdefinierte Ansicht ohne das dynamische Einfügen und es funktionierte gut, aber wenn es um meine Arbeits Code-Basis zu bewegen, kann ich nicht onDraw jemals genannt zu bekommen bekommen kann, auch wenn der Blick Konstruktor aufgerufen wird und die onMeasure wird auch genannt wird. Ich habe invalidate() und postInvalidate() Anrufe rund um den Ort versucht setzen, aber sie scheinen nicht die Ansicht zu zwingen, zu ziehen. Die Ansicht Hierarchie sieht gleich für beide Version und ich bin verloren.

Kann mir jemand helfen?

EDIT: Ein bisschen mehr Tests haben gezeigt, dass onDraw auf dem Emulator genannt wird immer, aber nicht den Hörer ab. Auch onSizeChanged am Mobilteil hat die richtigen Werte kommen durch, aber auf dem Emulator die Werte sind alle 0.

EDIT: Ich habe über mit ihm spielen und noch nicht überall bekommen, haben so ein Kopfgeld auf sie setzen. Wenn Sie mehr Code / xml / Infos benötigen dann lass es mich wissen.

War es hilfreich?

Lösung 2

änderte ich den View zu einem TextView und es scheint jetzt zu arbeiten, obwohl ich bin ein wenig verwirrt, Warum die View hat nicht funktioniert.

Andere Tipps

Das klingt viel wie ein Problem, das ich vor kurzem hatte, mit meiner ersten benutzerdefinierten Ansicht. Haben Sie bemerkt, wenn, wenn Ansichtshierarchie Laden Sie Ihre benutzerdefinierten Ansichten angezeigt? und trotzdem tun sie erscheinen in der Drahtgitter-Vorschau angelegt oder nicht?

Wenn letzteres der Fall ist, ist es requestLayout(), die nicht genannt bekommt (Lade Ansicht Hierarchie Anrufe, die auf jeder Ansicht - das ist, warum es Ansichten macht auftauchen). Ich habe auch, dass ein ähnlicher Fehler gefunden wurde bereits berichtet hier .

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top