2016-07-27 6 views
0

Ich erhalte Fehler "Inkompatible Typen" in der OnAttach-Methode. Ich versuche, hier eine Schnittstelle zu erstellen, aber ich weiß nicht, warum das passiert. Ich denke, ich habe es richtig gemacht. Und auch wenn ich "createMeme" -Methode anrufe, gibt es mir einen Fehler, dass "contra diese Methode nicht auflöst", während diese Methode öffentlich ist. Irgendeine Verwirrung beim Verstehen meiner Frage als plz fragen, ich bin ein schrecklicher Fragesteller irgendwie. Hat jemand eine Idee? Vielen Dank im Voraus :)Fehler beim Erstellen der Schnittstelle in OnAttach-Methode

public class TopSectionFragment extends Fragments 
{ 
private static EditText toptextInput; 
private static EditText bottomtextInput; 

TopSectionFragment activityCommander; 

public interface TopSectionListener 
{ 
    public void createMeme(String topText, String bottomText); 
} 

@Override 
@SuppressWarnings("deprecation") 
public void onAttach(Activity activity) 
{ 
    super.onAttach(activity); 
    try { 
     activityCommander = (TopSectionListener) activity;//error here 
    }catch(ClassCastException e) 
    { 
     throw new ClassCastException (activity.toString()); 
    } 
} 
+1

Zu allererst , diese Deklaration von 'onAttach' ist veraltet, sie sollte 'Context context' als Parameter annehmen. Zweitens, zeigen Sie Ihre Aktivität. Wird 'TopSettionListener' implementiert? – Vucko

+1

Vielleicht implementieren Sie TopSectionListener nicht zur Aktivität? – Andreyua

+0

@Andreyua ich implementierte es. aber es gab immer noch denselben Fehler. Daher habe ich den Typ von activityCommander geändert und den Fehler entfernt. –

Antwort

0

Neben den Kommentaren von @Vucko und @Andreyua, würde Ich mag folgendes hinzuzufügen:

TopSectionListener activityCommander; 

statt

TopSectionFragment activityCommander; 
+0

Ja, ich habe es geändert und der Fehler ist weg. :) –