Ich verwende eine benutzerdefinierte Titelansicht in meiner Anwendung für jede Aktivität. In einer der Aktivitäten muss ich basierend auf Schaltflächenklicks die benutzerdefinierte Titelansicht ändern. Das funktioniert jetzt jedes Mal, wenn ich einen Anruf bei setFeatureInt mache.Android - benutzerdefinierte Titelansicht zur Laufzeit ändern
Wenn ich jedoch versuche, Elemente im benutzerdefinierten Titel zu aktualisieren (z. B. den Text einer Schaltfläche oder eine Textansicht im Titel ändern), findet das Update nicht statt.
Debugging durch den Code zeigt, dass die Textansicht und Schaltflächen Instanzen nicht null sind und ich kann auch die benutzerdefinierte Titelleiste sehen. Der Text in der Textansicht oder der Schaltfläche wird jedoch nicht aktualisiert. Hat jemand anderes dieses Problem konfrontiert? Wie löse ich es?
Danke.
EDIT
Hier ist, was ich versuchte. Wird auch beim Aufruf von postInvalidate nicht aktualisiert.
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.text_title);
TextView databar = (TextView) findViewById(R.id.title_text);
databar.setText("Some Text");
databar.postInvalidate();
Button leftButton = (Button) findViewById(R.id.left_btn);
leftButton.setOnClickListener(mLeftListener);
leftButton.setText("Left Btn");
leftButton.postInvalidate();
Button rightBtn = (Button) findViewById(R.id.right_btn);
rightBtn.setOnClickListener(mRightListener);
rightBtn.postInvalidate();
Siehe diese für alternative Lösung http://StackOverflow.com/Questions/8634319/How-to-set-different-title-for-alert-dialog-when-Webview-page-is-loaded/9394561#9394561 – Sameer