Hallo Ich versuche einzurichten, so habe ich eine Listenansicht auf einem Fragment in meiner Anwendung dargestellt, wenn ich versuche, die App mit meinem laufen zu lassen, wird es auf einem Fragment abstürzen, aber wenn es ist auf einer Haupttätigkeit wird es arbeiten. Ich habe mich gefragt, ob jemand könnte mir sagen, was ich das letzte Stück von Code geändert werden müssen, um sie auf ein Fragment arbeitenEinstellung Listview Adapter auf Fragment
Der folgende Code meiner Haupttätigkeit und seine XML darstellt, die, wie es funktioniert sollte
public class MainActivity extends AppCompatActivity {
List <Wine> lstWine;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main_activity);
createData();
ListView lvWine = (ListView)this.findViewById(R.id.lvWines);
WineAdapter adapter = new WineAdapter(this, R.layout.custom_listview, lstWine);
lvWine.setAdapter(adapter);
}
public void createData(){
lstWine = new ArrayList<Wine>();
lstWine.add(new Wine(R.drawable.blush, "Blushshs", "Random", "MONEY"));
lstWine.add(new Wine(R.drawable.blush, "Blush", "Random", "String"));
lstWine.add(new Wine(R.drawable.blush, "Blush", "YEAR", "Random"));
lstWine.add(new Wine(R.drawable.blush, "Blush", "fffffffffffffffffffffff", "Random"));
lstWine.add(new Wine(R.drawable.blush, "Blush", "YEAR", "Random"));
lstWine.add(new Wine(R.drawable.blush, "Blush", "YEAR", "Random"));
lstWine.add(new Wine(R.drawable.blush, "Blush", "YEAR", "Random"));
lstWine.add(new Wine(R.drawable.blush, "Blush", "YEAR", "Random"));
lstWine.add(new Wine(R.drawable.blush, "Blush", "fffffffffffffffff", "Random"));
lstWine.add(new Wine(R.drawable.blush, "Blush", "YEAR", "Random"));
lstWine.add(new Wine(R.drawable.blush, "Blush", "YEAR", "Random"));
lstWine.add(new Wine(R.drawable.blush, "Blush", "YEAR", "Random"));
}
Der Code oben habe ich versucht, oben zu konvertieren, dass ich es eine ListView innerhalb eines Fragments anwenden könnte.
public class winelistfragment extends Fragment {
List<Wine_String> lstWine;
Inflater inflate;
@Override
public void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
wineListData();
ListView lvWine = (ListView)getActivity().findViewById(R.id.testlistview);
WineAdapter adapter = new WineAdapter(getActivity(), R.layout.custom_winelist, lstWine);
lvWine.setAdapter(adapter);
}
public void wineListData(){
lstWine = new ArrayList<Wine_String>();
lstWine.add(new Wine_String(R.drawable.blush, "Blushshs", "Random", "MONEY"));
lstWine.add(new Wine_String(R.drawable.blush, "Blush", "Random", "String"));
lstWine.add(new Wine_String(R.drawable.blush, "Blush", "YEAR", "Random"));
lstWine.add(new Wine_String(R.drawable.blush, "Blush", "fffffffffffffffffffffff", "Random"));
lstWine.add(new Wine_String(R.drawable.blush, "Blush", "YEAR", "Random"));
lstWine.add(new Wine_String(R.drawable.blush, "Blush", "YEAR", "Random"));
lstWine.add(new Wine_String(R.drawable.blush, "Blush", "YEAR", "Random"));
lstWine.add(new Wine_String(R.drawable.blush, "Blush", "YEAR", "Random"));
lstWine.add(new Wine_String(R.drawable.blush, "Blush", "fffffffffffffffff", "Random"));
lstWine.add(new Wine_String(R.drawable.blush, "Blush", "YEAR", "Random"));
lstWine.add(new Wine_String(R.drawable.blush, "Blush", "YEAR", "Random"));
lstWine.add(new Wine_String(R.drawable.blush, "Blush", "YEAR", "Random"));
}
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment_wine, container, false);
Können Sie mir sagen, was ich falsch mache und wie Fragment-Code ändern?
post bitte die Logcat des Absturzes bitte. – Vucko
Erstellen Sie ein minimales, vollständiges und überprüfbares Beispiel. Siehe: http://stackoverflow.com/help/how-to-ask –