2012-08-28 2 views
6

i verwenden Eclipse Auto außer Kraft setzen eine Methode:Aufschalten Methode aber Parameter arg0 ist

@Override 
public void draw(Canvas arg0, MapView arg1, boolean arg2) { 
    // TODO Auto-generated method stub 
    super.draw(arg0, arg1, arg2); 
} 

Sie sehen, ist der Parameter arg0 ist, arg1, arg2, ist es schwer denken zu read.i, wenn meine Finsternis haben Fehler ist , weil ich denke, es sollte mir geben:

draw(Canvas canvas, MapView mapview, boolean flag) 

so meine Frage, warum meine Finsternis geben sie mir arg0 und so weiter, wie es zu lösen?

+0

Eclipse wird nur so argumentieren, müssen Sie ändern, was Sie wollen .. –

Antwort

8

Wenn Sie "Dokumentation für Android SDK" über "Android SDK Manager" installieren, wird es behoben.

1

Es ist nichts falsch. Das ist Eclipse-Art, Variablen zu benennen. Es wird jedoch empfohlen, sie in Eigennamen umzuwandeln.

Side Hinweis: Um eine Variable im Code zu umbenennen Eclipse: Right click on the variable => Refactor => Rename

+1

Es ist klar, das ist kompilierbar, aber schrecklichen Code. Refactor-Umbenennen bei jeder auf diese Weise erstellten Variable wäre lächerlich. – ZaBlanc

1

Es ist macht keinen Unterschied. Aber es ist immer eine gute Übung, den Code so zu schreiben, dass er selbsterklärend sein sollte.

Imp ist der "Typ" und keine. Passing Parameter in der Methode, Sie sollten korrekt sein und was ich denke, ist.

-2

Es spielt keine Rolle, wie der Name des Parameters lautet. Stellen Sie nur sicher, dass Sie den richtigen Wert für die Variable/den Parameter übergeben.

+0

Sorry, aber ich kann hier nicht zustimmen. Der Name muss die Bedeutung wiedergeben. Wenn Sie jemals mit anderen Leuten in einem Team zusammenarbeiten, werden sie nicht glücklich darüber sein, die Namen in Ihrem Code zuerst zu "entschlüsseln". – Bananeweizen

+0

Wir sind alle Profis hier, und dies zu sagen ist * legal * ist offensichtlich - und eindeutig keine erträgliche Lösung. – ZaBlanc

3

Dies hängt ganz von der Tatsache, ob Eclipse nicht die Quellen des Dritten Code auf dem Build-Pfad dieses Projekt hat. In Ihrem Fall hat es nur die binäre Klassendatei und kann Ihnen nur die Typen zur Verfügung stellen, da Argumentnamen nicht mehr Teil der Binärdatei sind.

Das heißt, bitte

  • die Quellen Ihres Android-Ziel installieren
  • haben Maven die Quellen Artefakte herunterladen Sie in Maven verwenden
  • Quellen an Dritte Bibliotheken anhängen, die Sie
  • verwenden
  • installieren Sie die SDK-Versionen von Eclipse-Plugins, die Sie als Zielplattform verwenden

, um dieses Problem in verschiedenen Umgebungen zu lösen.