2017-03-08 6 views
-1

Ich möchte eine ListView in meinem Fragment laden und das Problem mit dem Adapter ist der Fehler - Cannot resolve constructor ArrayAdapter.Kann Konstruktor ArrayAdapter (Listview, Fragment) nicht lösen

Dies ist die onCreateView Methode in meiner Klasse:

public class AndroidGUIModifier implements IMyComponentGUIModifier, IFragmentEvents { 

    @Override 
    public void onCreateView() { 
     tv1 = (TextView) fragment.findViewById("xtv1"); 
     tv2 = (TextView) fragment.findViewById("xtv2"); 
     lv=(ListView) fragment.findViewById("xdevices") ; 

     mydevices = new ArrayList<String>(); 

     ArrayAdapter<String> adapter = new ArrayAdapter<String>(AndroidGUIModifier.this,android.R.layout.simple_list_item_1,mydevices);// the problem here : Cannot resolve constructor ArrayAdapter 

     lv.setAdapter(adapter); 
    } 

} 

Antwort

1

die Context aus dem Fragment erhalten und es nur die ArrayAdapter weitergeben müssen:

ArrayAdapter<String> adapter = new ArrayAdapter<String>(fragment.getContext(), android.R.layout.simple_list_item_1, mydevices); 
+0

Ich habe dies: Kann nicht Konstruktor ‚ArrayAdapter (java.security.AccessControlContext, int, java.util.List ) –

+0

lösen erweitern Sie' Fragment'? –

+0

öffentliche Klasse AndroidGUIModifier implementiert IMyComponentGUIModifier, IFragmentEvents { –

1

Wenn es in einem Fragment ist, was Sie brauchen den Kontext für das erste Argument normalerweise so zu übergeben, denke ich?

ArrayAdapter<String> adapter = new ArrayAdapter<String>(getActivity(), android.R.layout.simple_list_item_1, mydevices); 

Wenn Sie AndroidGUIModifier als Fragment verwenden, können Sie versuchen, die Fragment-Klasse erweitern?

public class AndroidGUIModifier extends Fragment implements IMyComponentGUIModifier, IFragmentEvents { 
+0

Kann Methode 'getActivity() nicht lösen –

+0

Verwenden Sie den AndroidGUIModifier als Ihr Fragment? –

+0

das Problem war wie sagte Nika über fragment.getContext(), danke. –

Verwandte Themen