Derzeit bin ich vorsichtig, verschiedene IDs für jedes Widget zu verwenden, aber wenn ich die gleiche ID für einige Widgets in verschiedenen Layout-XML-Dateien verwenden würde, was würde mit meinen Aufrufen von findViewById passieren? Würde es verwirren und ein Widget aus der falschen Layoutdatei zurückgeben?Was passiert, wenn ich dieselbe ID für mehrere Widgets in verschiedenen Layouts verwende?
Ich frage, weil ich in einigen anderen Ansichten daran gedacht habe, eine Ansicht (mit einer Reihe von Schaltflächen) einzubeziehen, dann müsste jede dieser Bildschirmklassen jeder Schaltfläche in der enthaltenen Ansicht ein etwas anderes Verhalten zuweisen. Um das zu tun, würden sie findViewById für dieselbe ID aufrufen. derzeit Zum Beispiel mag ich diese in jeder Datei:
final ImageButton homeButton = (ImageButton)this.findViewById(R.id.rshome_button);
homeButton.setOnClickListener(new BottomButtonClickListener());
final ImageButton hotButton = (ImageButton)this.findViewById(R.id.rshotlist_button);
hotButton.setOnClickListener(new BottomButtonClickListener());
final ImageButton locButton = (ImageButton)this.findViewById(R.id.rsbot_map);
locButton.setOnClickListener(new BottomButtonClickListener());
final ImageButton sendButton = (ImageButton)this.findViewById(R.id.rssend_button);
sendButton.setOnClickListener(new BottomButtonClickListener());
Aber ich ändern, um die R.id in jeder Datei auf das Widget in jedem assiciated Layout zu zeigen. es wäre schön, wenn ich die eine R.id für alle verwenden könnte, so dass ich nicht jede Layoutdatei und jede Bildschirmklasse optimieren muss.
Dank
Also wie weiß es, welches das ist, das wir suchen? – GMsoF