Моя ситуация такова:Соотнесите данные и ListView в Android
На мой взгляд Highscore_zeigen
I've получил ArrayList<Rangliste>
, что я хочу показать. Все дело в onPostExecute
потока, который пытается получить данные JSON из URL.
ArrayList<String> gewinnernamen = new ArrayList<String>();
ArrayList<String> gewinnerdatum = new ArrayList<String>();
Rangliste r = new Rangliste("","");
ArrayList<Rangliste> rangliste = new ArrayList<Rangliste>();
....
@Override
protected void onPostExecute(String result) {
// TODO Auto-generated method stub
if(isOnline() == true){
System.out.println("HIHIHIHIHHIHI " +result);
super.onPostExecute(result);
JSONArray jsonarray = null;
try {
jsonarray = new JSONArray(result);
} catch (JSONException e) {
Toast.makeText(Highscore_zeigen.this, "Ups! Bitte überprüfe deine Netzwerkverbindung! ", Toast.LENGTH_SHORT).show();
e.printStackTrace();
}
String namest = "";
String datumst ="";
try {
jb = (JSONObject) jsonarray.getJSONObject(0);
} catch (JSONException e2) {
// TODO Auto-generated catch block
e2.printStackTrace();
}
for(int i = 0; i <5;i++){
try {
jb = (JSONObject) jsonarray.getJSONObject(i);
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
namest = jb.getString("name");
datumst = jb.getString("datum");
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
gewinnernamen.add(i, namest);
gewinnerdatum.add(i, datumst);
adapter.notifyDataSetChanged();
}
for(int is = 0; is<5; is++){
r = new Rangliste(gewinnernamen.get(is), gewinnerdatum.get(is));
rangliste.add(r);
}
Так данные, которые я хочу показать, сейчас находится в rangliste
. Все работает отлично, но я не знаю, как показать свои данные в моем ListView
. ListView находится в файле макета Highscore_zeigen, у меня есть макет для моей строки:
<ListView
android:id="@+id/lvGewinner"
android:paddingTop="40dp"
android:paddingLeft="20dp"
android:paddingBottom="30dp"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true" >
</ListView>
Вот мой макет:
<TextView
android:id="@+id/name"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:textStyle="bold"
/>
<TextView
android:id="@+id/dist"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:textSize="8dp"
android:textStyle="italic"/>
Так что я у меня есть ListView, и у меня также есть макет для моего ListView. Я не знаю, как я могу подключить эти три вещи, чтобы данные отображались в моем ListView.
Таким образом, вы просто хотите, чтобы отобразить данные в виде списка на экране? –
Как список на экране с данным макетом, который я разместил. – user896692