Tropfen Fragment, Aktivität und Art, wenn Sie diese bei der Codierung qualifizieren, so:
boolean isLoggedIn = false;
android:id="@+id/is_logged_in"
Wie in anderen Antworten erwähnt die XML bietet den Qualifier, jetzt müssen Sie entscheiden, ob Konsistenz und/oder Weiterqualifikation ist notwendig und wenn es passt. Müssen Sie sich wirklich qualifizieren und wenn Sie das nicht tun, wird der Code von Ihnen oder jemand anderem viel härter sein?
Und was ist mit strings.xml
?
Präfix die ID mit einem Frag oder Aktivitätskennzeichner. So zum Beispiel:
<string name="profile_is_logged_in_true">Logged in.</string>
<string name="profile_is_logged_in_false">Not logged in.%</string>
Auch & hellip;
<plurals name="plural_is_logged_in_duration">...
Ich habe gespielt mit:
<string name="profile_isloggedin_false">Not logged in.</string>
aber noch nicht überzeugt. Dies ist eigentlich ein Klassifizierungsproblem, das inzwischen in anderen Disziplinen durch Tagging gelöst wurde. Java bietet gepunktetes Namespace und Typ-Qualifikation, so
com.example.android.app.profile.State.isLoggedIn
Android verwenden Dinge wie R.string
:-) Also Sie das Java sowie einige zusätzliche Namespace von Android haben. Vergessen Sie nicht, Sie können mehr als einen String-Ressourcen-Datei haben, so vielleicht:
res/values/widget_defaults.xml
einige Standardwerte für etwa eine TextView
enthalten könnten. Die wahren und falschen Strings sollten von Plural behandelt werden - aber das Beispiel hilft hoffentlich, trotz ein bisschen erfunden.
Ah, ich verstehe. Vielen Dank, dass @kcoppock, wenn die ID nur in einer einzigen Ansichtshierarchie eindeutig sein muss, dann ist es klar, andere Chunks zu verlassen. ; D –
@kcoppock, wird es ein Problem für Geschwisterfragmente oder verschachtelte Fragmente? – bcorso
Kann sein, wenn Sie nach Fragmentsichten aus der Aktivität suchen, aber wenn Sie alle Ihre Ansichtsmanipulationen innerhalb des Fragments durchführen (was Sie normalerweise tun sollten), ist das kein Problem. – kcoppock