My Complex JSON已成功收到,但当我尝试在listView Layout中显示数据时,应用程序停止工作

时间:2017-08-10 09:15:50

标签: java android json retrofit

我正在使用android studio并在调用API和JSON格式的应用程序上进行改造,JSON root就是这样的JsonObject:

{
"contries": [
{
"id": 1,
"name_En": "Syria",
"name_Ar": "سوريا",
"flag": "~/Images/Flags/201705252005308923_syria.png",
"visible": true,
"cities": [
{
"id": 10,
"name_En": "Damascus",
"name_Ar": "دمشق",
"description_En": "Damascus (Arabic: دمشق‎‎ Dimashq [dɪˈmaʃq], Syrian: [dɪˈmɪʃeʔ]) is the capital and likely the largest city of Syria, following the decline in population of Aleppo due to the ongoing battle for the city. It is commonly known in Syria as ash-Sham (Arabic: الشام‎‎ ash-Shām) and nicknamed as the City of Jasmine (Arabic: مدينة الياسمين‎‎ Madīnat al-Yāsmīn). In addition to being one of the oldest continuously inhabited cities in the world,[3] Damascus is a major cultural and religious centre of the Levant. The city has an estimated population of 1,711,000 as of 2009\r\n\r\nDamascus (Arabic: دمشق‎‎ Dimashq [dɪˈmaʃq], Syrian: [dɪˈmɪʃeʔ]) is the capital and likely the largest city of Syria, following the decline in population of Aleppo due to the ongoing battle for the city. It is commonly known in Syria as ash-Sham (Arabic: الشام‎‎ ash-Shām) and nicknamed as the City of Jasmine (Arabic: مدينة الياسمين‎‎ Madīnat al-Yāsmīn). In addition to being one of the oldest continuously inhabited cities in the world,[3] Damascus is a major cultural and religious centre of the Levant. The city has an estimated population of 1,711,000 as of 2009\r\n\r\n\r\nDamascus (Arabic: دمشق‎‎ Dimashq [dɪˈmaʃq], Syrian: [dɪˈmɪʃeʔ]) is the capital and likely the largest city of Syria, following the decline in population of Aleppo due to the ongoing battle for the city. It is commonly known in Syria as ash-Sham (Arabic: الشام‎‎ ash-Shām) and nicknamed as the City of Jasmine (Arabic: مدينة الياسمين‎‎ Madīnat al-Yāsmīn). In addition to being one of the oldest continuously inhabited cities in the world,[3] Damascus is a major cultural and religious centre of the Levant. The city has an estimated population of 1,711,000 as of 2009",
"description_Ar": "دمشق، هي عاصمة الجمهورية العربية السورية، ومركز محافظة دمشق.[4] وهي أحدى أقدم مدن العالم مع تاريخ غير منقطع منذ أحد عشر ألف عام تقريبًا، وأقدم مدينة - عاصمة في العالم.[5][6][7] أصبحت عاصمة منطقة سوريا منذ عام 635.[8]\r\n\r\nهناك عدة نظريات في شرح معنى اسم دمشق، أوفرها انتشارًا كون اللفظة سامية قديمة بمعنى الأرض المسقية؛[9] يعود ذلك لموقع المدينة الجغرافي في سهل خصيب يرويه نهر بردى وفروعه العديدة، مشكلاً بذلك غوطة دمشق؛ وأيضًا يتميز موقع المدينة بوجود جبل قاسيون فيها.[10][11] اقتصرت تسمية دمشق على المدينة القديمة حتى القرون الوسطى، حين أخذت المدينة بالتوسع خارجها، حاليًا تتألف دمشق من خمسة عشر منطقة سكنية متصلة بمحيطها من الضواحي لتشكل ما يعرف باسم دمشق الكبرى.",
"images": [
{
"id": 30,
"path": "~/Images/Cities/201707291821109745_dam2.jpg"
}
],
"cityLocation": "https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d106464.97413085829!2d36.22864780748151!3d33.50058510608847!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x1518e6dc413cc6a7%3A0x6b9f66ebd1e394f2!2sDamascus%2C+Syria!5e0!3m2!1sen!2s!4v1492875752325"
},
{
"id": 11,
"name_En": "Latakia",
"name_Ar": "اللاذقية",
"description_En": "Latakia; Lattakia or Latakiyah (Arabic: اللَاذِقِيَّة‎‎ al-Lādhiqīyah  Syrian pronunciation: [el.laːdˈʔɪjje, -laːðˈqɪjja]), is the principal port city of Syria, as well as the capital of the Latakia Governorate. Historically, it has also been known as Lāŏdĭcḗa or Lāŏdĭcḗa ad Mắre. In addition to serving as a port, the city is a manufacturing center for surrounding agricultural towns and villages. According to the 2004 official census, the population of the city is 383,786.[3][4] It is the 5th-largest city in Syria after Aleppo, Damascus, Homs and Hama, and it borders Tartus to the south, Hama to the east, and Idlib to the north. Cape Apostolos Andreas, the north-eastern tip of Cyprus, is about 68 miles (109 km) away.[5]\r\n\r\nAlthough the site has been inhabited since the 2nd millennium BCE, the modern-day city was first founded in the 4th century BCE under the rule of the Seleucid empire. Latakia was subsequently ruled by the Romans, then the Ummayads and Abbasids in the 8th–10th centuries CE. Under their rule, the Byzantines frequently attacked the city, periodically recapturing it before losing it again to the Arabs, particularly the Fatimids. Afterward, Latakia was ruled successively by the Seljuk Turks, Crusaders, Ayyubids, Mamluks, and the Ottomans. Following World War I, Latakia was assigned to the French mandate of Syria, in which it served as the capital of the autonomous territory of the Alawites. This autonomous territory became the Alawite State in 1922, proclaiming its independence a number of times until reintegrating into Syria in 1944",
"description_Ar": "اللاذقية (باليونانية:Λαοδικεία نقحرة: لاوديكيا، باللاتينية: Laodicea ad Mare) مدينة سوريّة، تعتبر الخامسة في الجمهورية من حيث عدد السكان، بعد دمشق وحلب وحمص وحماة، تقع على الساحل الشرقي البحر الأبيض المتوسط، ضمن شبه جزيرة بحرية على بعد حوالي 385 كم من الشمال الغربي للعاصمة دمشق وهي المنفذ الأول للبلاد على البحر المتوسط والحاضنة لأكبر مرافئها، ما أكسبها موقعًا تجاريًا فريدًا، وأغناها بالعديد من المرافق الحيوية والصناعية والتجاريّة؛ فضلاً عن ذلك فإن المدينة هي المركز الإداري لمحافظة اللاذقية.\r\n\r\nأيضًا فإن المدينة تعتبر مركزًا سياحيًا هامًا لغناها بالمواقع الأثريّة التي يرقى بعضها إلى العصر الفنيقي، فضلاً عن المناخ المعتدل وتوفر خدمات الصناعة السياحية. كانت المنطقة التي تشغلها المدينة حاليًا مأهولة بالسكن البشري منذ العصر الحجري، وقد شهدت ازدهارًا فنيًا واقتصاديًا وثقافيًا نادرًا وظهرت من أوغاريت الأبحدية الأولى.[1] كما كانت مركزًا هامًا في العصرين السلوقي والروماني، إلا أن وقوعها قرب الحدود مع الإمبراطورية البيزنطيّة بعد الفتح الإسلامي، حولها لما يشبه دول الثغور، وأدى أيضًا إلى تراجع أهميتها ودورها، وما ساهم في تردي الوضع الكوارث الطبيعية والزلازل التي أصابتها، فضلاً عن الإهمال الإداري خصوصًا إبان الحكم العثماني؛ بيد أن المدينة قد أخذت أهميتها في التنامي منذ القرن العشرين، واستطاعت أن تصبح مركزًا تجاريًا وصناعيًا وثقافيًا وسياحيًا هامًا، حتى غدت مقصد حوالي نصف مليون زائر سنويًا.[2]\r\n\r\nتطور عدد سكان المدينة بشكل ملحوظ منذ بداية القرن العشرين بفضل تزايد أهميتها ونمو سوقها التجاري، ويبلغ عدد سكانها حسب إحصاءات 2009 650,558 نسمة، وهي مدينة متنوعة طائفيًا فهناك مسلمون علويون ومسلمون سنيّون والمسيحيون أغلبهم يتبع طائفة الروم الأرثوذكس إلى جانب أقليات أخرى؛ أما من الناحية العرقية فالعرب السوريون هم الأغلبية الساحقة مع وجود أقليات أرمنية وتركمانية. أغلب سكان المدينة متعلمون وتبلغ نسبة الأمية في المحافظة 9% أي أقل من المعدل العام في سوريا.[3] أما النشاط الاقتصادي للسكان فهو يبدأ من خدمات الاستيراد والتصدير ومن ثم الأعمال المرتبطة بالسياحة والصناعة حيث ينشط في المدينة عددٌ من الصناعات كالسجاد والألمنيوم والإسفلت وغيره.[4] اختيرت قلعة صلاح الدين، على بعد 3 كم من المدينة، كواحدة من مواقع التراث العالمي، المحمي من قبل اليونيسكو.[5]",
"images": [
{
"id": 8,
"path": "~/Images/Cities/201704282133483574_latt1.jpg"
},
{
"id": 9,
"path": "~/Images/Cities/201704282133483614_latt2.jpg"
},
{
"id": 10,
"path": "~/Images/Cities/201704282133483654_latt3.jpg"
}
],
"cityLocation": "https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d103885.32796422255!2d35.722152676448324!3d35.54341460064509!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x1526ac2d61d4607d%3A0x8e325bf8a14195de!2sLatakia%2C+Syria!5e0!3m2!1sen!2s!4v1493407817028"
}
]
},
{
"id": 2,
"name_En": "Lebanon",
"name_Ar": "لبنان",
"flag": "~/Images/Flags/lebanon.png",
"visible": true,
"cities": [
{
"id": 13,
"name_En": "Beirut",
"name_Ar": "بيروت",
"description_En": "test",
"description_Ar": "تجربة",
"images": [
{
"id": 13,
"path": "~/Images/Cities/201705051627399756_be1.jpg"
},
{
"id": 14,
"path": "~/Images/Cities/201705051627399806_be2.jpg"
}
],
"cityLocation": "https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d52992.27803765728!2d35.46901292043602!3d33.8892062963793!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x151f17215880a78f%3A0x729182bae99836b4!2sBeirut%2C+Lebanon!5e0!3m2!1sen!2s!4v1493993997987"
}
]
},
{
"id": 11,
"name_En": "France",
"name_Ar": "فرنسا",
"flag": "~/Images/Flags/201705061252346856_france.png",
"visible": true,
"cities": [
{
"id": 17,
"name_En": "Paris",
"name_Ar": "باريس",
"description_En": "Paris (French: [paʁi] ( listen)) is the capital and most populous city of France. It has an area of 105 square kilometres (41 square miles) and a population of 2,229,621 in 2013 within its administrative limits.[3] The city is both a commune and department and forms the centre and headquarters of the Île-de-France, or Paris Region, which has an area of 12,012 square kilometres (4,638 square miles) and a population in 2016 of 12,142,802, comprising roughly 18 percent of the population of France.[4] By the 17th century, Paris was one of Europe's major centres of finance, commerce, fashion, science, and the arts, and it retains that position still today. The Paris Region had a GDP of €624 billion (US $687 billion) in 2012, accounting for 30.0 percent of the GDP of France and ranking it as one of the wealthiest regions in Europe.\r\n\r\nThe City of Paris is but the core of a built-up area that extends well beyond its administrative limits. Commonly referred to as the agglomération Parisienne, and statistically as a unité urbaine (a measure of urban area), the agglomeration has a 2013 population of 10,601,122, which makes it the largest in the European Union.[5] City-influenced commuter activity reaches well beyond even this in a statistical aire urbaine de Paris (a measure of metropolitan area), that had a 2013 population of 12,405,426,[6]a number one-fifth the population of France,[7] and one that makes it, after London, the second largest metropolitan area in the European Union. Although joined in a single urban tissue, Paris' lack of administrative and economic cohesion with its suburbs has been a longstanding problem, but a 2016 'Metropole of Grand Paris' economic and environmental initiative[8] covering an 814 square kilometres (314 square miles) area and a population of 7 million, exists since 2016.[9]\r\n\r\nThe city is also a major rail, highway, and air-transport hub served by two international airports: Paris-Charles de Gaulle (the second busiest airport in Europe after London Heathrow Airport with 63.8 million passengers in 2014) and Paris-Orly. Opened in 1900, the city's subway system, the Paris Métro, serves 5.23 million passengers daily.[10] It is the second busiest metro system in Europe after Moscow Metro. Notably, Paris Gare du Nord is the busiest railway station in the world outside of Japan, with 262 millions passengers in 2015.[11]\r\n\r\nParis has many important cultural institutions: its Louvre museum is the most visited in the world; its Musée d'Orsay is noted for its collection of French Impressionist art, and its Pompidou-center Musée National d'Art Moderne has the largest collection of modern and contemporary art in Europe. The central area of the city along the Seine River is classified as a UNESCO Heritage Site and includes many notable monuments, including Notre Dame Cathedral, the Sainte-Chapelle, the former Universal Exposition Grand Palais, Petit Palais and Eiffel Tower, and the Basilica of Sacré-Cœur in Montmartre. In 2015, Paris received 22.2 million visitors, making it one of the world's top tourist destinations.\r\n\r\nThe association football club Paris Saint-Germain and the rugby union club Stade Français are based in Paris. The 80,000-seat Stade de France, built for the 1998 FIFA World Cup, is located just north of Paris in the neighbouring commune of Saint-Denis. Paris hosts the annual French Open Grand Slam tennis tournament on the red clay of Roland Garros. Paris hosted the 1900 and 1924 Summer Olympics and is bidding to host the 2024 Summer Olympics. The 1938 and 1998 FIFA World Cups, the 2007 Rugby World Cup, and the 1960, 1984, and 2016 UEFA European Championships were also held in the city, and every July, the Tour de France bicycle race finishes in the city.",
"description_Ar": "باريس (بالفرنسية: Paris) هي عاصمة فرنسا وأكبر مدنها من حيث عدد السكان. تقع على ضفاف نهر السين في الجزء الشمالي من البلاد في قلب منطقة إيل دو فرانس. بلغ عدد سكانها 2,243,833 عام 2010 ضمن نطاقها الإداري فقط، بينما يربو عدد سكان المدينة مع ضواحيها عن 12 مليون نسمة.\r\n\r\nظلت باريس منطقة فائقة الأهمية لما يزيد عن ألفي عام[10]، ومع مطلع القرن الثاني عشر، أصبحت باريس مركزاً أوروبياً للعلم والفنون وأكبر مدن العالم الغربي حتى أوائل القرن الثامن عشر. كانت باريس مسرحاً للعديد من الأحداث السياسية الهامة على مر التاريخ، مثل الثورة الفرنسية. أما في الوقت الحاضر، فإنها تعتبر واحدة من أكبر المراكز الاقتصادية والثقافية ذات الثأثير الهام في السياسة والعلوم والترفيه والإعلام والأزياء والفنون مما جعلها واحدة من مدن العالم الرئيسية. في عام 2011، كان الناتج المحلي الإجمالي للمدينة 607 مليار يورو (845 مليار دولار) وهو من أكبر النواتج المحلية للمدن في العالم. باريس هي واحدة من الوجهات السياحية الرائدة في العالم كما أنها مقر لمعظم الشركات الفرنسية.\r\n\r\nتمتلك باريس مجموعة متنوعة من المتاحف والمسارح والمعالم الأثرية التي بنيت على مر القرون، مثل برج إيفل وقوس النصر ومتحف اللوفر وقصر فيرساي. باريس هي إحدى أكبر مراكز الفن في العالم، باحتوائها على عدد كبير من المتاحف التي تضم لوحات لأبرز الفنانين العالميين. كما أن لمطبخ المدينة سمعة عالمية، حيث تستقطب أشهر الطهاة على مستوى العالم. تضم باريس وضواحيها أرقى المدارس والجامعات الفرنسية، كما تحتوي على مقرات أكبر الصحف الفرنسية، مثل: لوموند، ولو فيغارو، وليبراسيون.\r\n\r\nباريس هي مقر لنادي باريس سان جيرمان لكرة القدم، كما يوجد فيها ملعب فرنسا الذي بني لاستضافة كأس العالم لكرة القدم 1998. كما تستضيف المدينة بطولة رولان غاروس لكرة المضرب.تتميز باريس بتنوع وسائل المواصلات وجودتها. تحتوي المدينة على مطارين دوليين رئيسيين هما مطار شارل ديغول الدولي ومطار باريس أورلي. يخدم مترو باريس -الذي افتتح عام 1900- حوالي 9 ملايين راكب يومياً.",
"images": [
{
"id": 19,
"path": "~/Images/Cities/201705061257036242_paris1.jpg"
},
{
"id": 20,
"path": "~/Images/Cities/201705061257036292_paris2.jpg"
},
{
"id": 21,
"path": "~/Images/Cities/201705061257036702_paris3.jpg"
},
{
"id": 22,
"path": "~/Images/Cities/201705061257036752_paris4.jpg"
}
],
"cityLocation": "https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d83998.9472267328!2d2.2775169827351287!3d48.85883773920885!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x47e66e1f06e2b70f%3A0x40b82c3688c9460!2sParis%2C+France!5e0!3m2!1sen!2s!4v1494068093558"
}
]
}

]
}

我有课程: class ResponceValue:

package com.example.android.travelandtourism;

import java.util.List;

/**
 * Created by haya on 06/08/2017.
 */

public class ResponseValue {
    private List<Countries> contries;

    public List<Countries> getContries() {
        return contries;
    }

    public void setContries(List<Countries> contries) {
        this.contries = contries;
    }


    // getters
    // setters
}

和班级国家:

package com.example.android.travelandtourism;
import java.util.ArrayList;
import java.util.List;
import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;



public class Country {
    public Country() {
    }

    public Country(Integer id, String nameEn, String nameAr, String flag, Boolean visible, ArrayList<City> cities) {
        this.id = id;
        this.nameEn = nameEn;
        this.nameAr = nameAr;
        this.flag = flag;
        this.visible = visible;
        this.cities = cities;
    }

    @SerializedName("id")
    @Expose
    private Integer id;
    @SerializedName("name_En")
    @Expose
    private String nameEn;
    @SerializedName("name_Ar")
    @Expose
    private String nameAr;
    @SerializedName("flag")
    @Expose
    private String flag;
    @SerializedName("visible")
    @Expose
    private Boolean visible;
    @SerializedName("cities")
    @Expose
    public ArrayList<City> cities = null;

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getNameEn() {
        return nameEn;
    }

    public void setNameEn(String nameEn) {
        this.nameEn = nameEn;
    }

    public String getNameAr() {
        return nameAr;
    }

    public void setNameAr(String nameAr) {
        this.nameAr = nameAr;
    }

    public String getFlag() {
        return flag;
    }

    public void setFlag(String flag) {
        this.flag = flag;
    }

    public Boolean getVisible() {
        return visible;
    }

    public void setVisible(Boolean visible) {
        this.visible = visible;
    }

    public ArrayList<City> getCities() {
        return cities;
    }

    public void setCities(ArrayList<City> cities) {
        this.cities = cities;
    }

}

和其他类......

现在在主要活动中当我尝试在他们的textViews中分配响应值时我的应用程序正在停止工作...虽然我可以在将其分配给字符串变量时看到该值... 我不知道出了什么问题......

我的主要活动是:

package com.example.android.travelandtourism;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.TextView;

import com.google.gson.Gson;
import com.google.gson.GsonBuilder;

import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.CountDownLatch;

import retrofit2.Call;
import retrofit2.Callback;
import retrofit2.Response;
import retrofit2.Retrofit;
import retrofit2.converter.gson.GsonConverterFactory;

public class MainActivity extends AppCompatActivity {

    Gson gson = new GsonBuilder()
            .setDateFormat("yyyy-MM-dd'T'HH:mm:ssZ")
            .create();

    Retrofit retrofit = new Retrofit.Builder()
            .baseUrl("http://www.travel-tourism1.somee.com/api/")
            .addConverterFactory(GsonConverterFactory.create(gson))
            .build();
    IApi service = retrofit.create(IApi.class);
    TextView name_En;
    TextView name_Ar;
    String nameeng;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);


        name_En = (TextView) findViewById(R.id.ivname_En);
        name_Ar = (TextView) findViewById(R.id.ivname_Ar);

        Call<ResponseValue> call = service.getCountries();
        call.enqueue(new Callback<ResponseValue>() {
            @Override
            public void onResponse(Call<ResponseValue> call, Response<ResponseValue> response) {
                ResponseValue countryResonse = response.body();
                List<Countries> cc = countryResonse.getContries();

                for(int count=0; count <= cc.size(); count++){

                     nameeng =  cc.get(count).getNameEn();
                    name_En.setText(nameeng.toString());

                }

            }

            @Override
            public void onFailure(Call<ResponseValue> call, Throwable t){
            }
        });
}
}

this is the result

我的布局: MainLayout:

<?xml version="1.0" encoding="utf-8"?>


<RelativeLayout android:layout_width="match_parent"
    android:layout_height="match_parent"
    xmlns:app="http://schemas.android.com/apk/res-auto"

    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools">
            
    <ListView
        android:id="@+id/list"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        tools:listitem="@layout/row"
        ></ListView>


    </RelativeLayout>

和rowLayout:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:padding="4dp">
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content">
        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/ivflag"
            android:src="@mipmap/ic_launcher"
            />
        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:orientation="vertical">

            <TextView
                android:id="@+id/ivname_En"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Syria"
                android:textColor="#104ba9"
                android:textAppearance="?android:attr/textAppearanceLarge"
                />
            <TextView
                android:id="@+id/ivname_Ar"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="سوريا"
                android:textColor="#104ba9"
                android:textAppearance="?android:attr/textAppearanceLarge"
                />
            <TextView
                android:id="@+id/ivvisible"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Syria"
                android:textColor="#104ba9"
                android:textAppearance="?android:attr/textAppearanceLarge"
                />



        </LinearLayout>
    </LinearLayout>

</LinearLayout>

谢谢! “编辑” logcat是:

08-10 11:25:14.606 10878-10878/? I/art: Not late-enabling -Xcheck:jni (already on)
08-10 11:25:14.607 10878-10878/? W/art: Unexpected CPU variant for X86 using defaults: x86
08-10 11:25:14.689 10878-10878/com.example.android.travelandtourism W/ActivityThread: Application com.example.android.travelandtourism is waiting for the debugger on port 8100...
08-10 11:25:14.691 10878-10878/com.example.android.travelandtourism I/System.out: Sending WAIT chunk
08-10 11:25:15.157 10878-10885/com.example.android.travelandtourism I/art: Debugger is active
08-10 11:25:15.296 10878-10878/com.example.android.travelandtourism I/System.out: Debugger has connected
08-10 11:25:15.296 10878-10878/com.example.android.travelandtourism I/System.out: waiting for debugger to settle...
08-10 11:25:15.509 10878-10878/com.example.android.travelandtourism I/System.out: waiting for debugger to settle...
08-10 11:25:15.710 10878-10878/com.example.android.travelandtourism I/System.out: waiting for debugger to settle...
08-10 11:25:15.911 10878-10878/com.example.android.travelandtourism I/System.out: waiting for debugger to settle...
08-10 11:25:16.111 10878-10878/com.example.android.travelandtourism I/System.out: waiting for debugger to settle...
08-10 11:25:16.312 10878-10878/com.example.android.travelandtourism I/System.out: waiting for debugger to settle...
08-10 11:25:16.513 10878-10878/com.example.android.travelandtourism I/System.out: waiting for debugger to settle...
08-10 11:25:16.715 10878-10878/com.example.android.travelandtourism I/System.out: waiting for debugger to settle...
08-10 11:25:16.916 10878-10878/com.example.android.travelandtourism I/System.out: waiting for debugger to settle...
08-10 11:25:17.117 10878-10878/com.example.android.travelandtourism I/System.out: waiting for debugger to settle...
08-10 11:25:17.318 10878-10878/com.example.android.travelandtourism I/System.out: debugger has settled (1446)
08-10 11:25:17.524 10878-10878/com.example.android.travelandtourism W/System: ClassLoader referenced unknown path: /data/app/com.example.android.travelandtourism-1/lib/x86
08-10 11:25:17.555 10878-10878/com.example.android.travelandtourism I/InstantRun: starting instant run server: is main process
08-10 11:25:17.848 10878-10878/com.example.android.travelandtourism D/NetworkSecurityConfig: No Network Security Config specified, using platform default
08-10 11:25:17.927 10878-10878/com.example.android.travelandtourism W/art: Before Android 4.1, method android.graphics.PorterDuffColorFilter android.support.graphics.drawable.VectorDrawableCompat.updateTintFilter(android.graphics.PorterDuffColorFilter, android.content.res.ColorStateList, android.graphics.PorterDuff$Mode) would have incorrectly overridden the package-private method in android.graphics.drawable.Drawable
08-10 11:25:18.403 10878-10878/com.example.android.travelandtourism W/art: Before Android 4.1, method int android.support.v7.widget.ListViewCompat.lookForSelectablePosition(int, boolean) would have incorrectly overridden the package-private method in android.widget.ListView
08-10 11:25:18.414 10878-10940/com.example.android.travelandtourism I/OpenGLRenderer: Initialized EGL, version 1.4
08-10 11:25:18.414 10878-10940/com.example.android.travelandtourism D/OpenGLRenderer: Swap behavior 1
08-10 11:25:18.414 10878-10940/com.example.android.travelandtourism W/OpenGLRenderer: Failed to choose config with EGL_SWAP_BEHAVIOR_PRESERVED, retrying without...
08-10 11:25:18.414 10878-10940/com.example.android.travelandtourism D/OpenGLRenderer: Swap behavior 0
08-10 11:25:18.872 10878-10878/com.example.android.travelandtourism D/AndroidRuntime: Shutting down VM
08-10 11:25:18.874 10878-10878/com.example.android.travelandtourism E/AndroidRuntime: FATAL EXCEPTION: main
                                                                                      Process: com.example.android.travelandtourism, PID: 10878
                                                                                      java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.TextView.setText(java.lang.CharSequence)' on a null object reference
                                                                                          at com.example.android.travelandtourism.MainActivity$1.onResponse(MainActivity.java:55)
                                                                                          at retrofit2.ExecutorCallAdapterFactory$ExecutorCallbackCall$1$1.run(ExecutorCallAdapterFactory.java:70)
                                                                                          at android.os.Handler.handleCallback(Handler.java:751)
                                                                                          at android.os.Handler.dispatchMessage(Handler.java:95)
                                                                                          at android.os.Looper.loop(Looper.java:154)
                                                                                          at android.app.ActivityThread.main(ActivityThread.java:6077)
                                                                                          at java.lang.reflect.Method.invoke(Native Method)
                                                                                          at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865)
                                                                                          at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755)

1 个答案:

答案 0 :(得分:0)

您需要使用ListView将数据放在ArrayAdapter内,而不能直接传递。

ListView listView = (ListView) findViewById(R.id.list);
ArrayList<String> arrayList = new ArrayList<>();//create a list to store the Strings
for(int count=0; count <= cc.size(); count++){
    nameeng =  cc.get(count).getNameEn();
    arrayList.add(nameeng);//add data to list
}
ArrayAdapter<String> adapter = new ArrayAdapter<String>(MainActivity.this,android.R.layout.simple_list_item_1,arrayList);// create adapter using the list before
listView.setAdapter(adapter);//set the adapter to the listView to show data