2017-01-08 17 views
0

私はアンドロイドスタジオで自動完全テキストビューを作成しようとしています。私は、Visual StudioのWeb APIを作り、私はこのような都市の名前のJSON配列を返すいます:json配列をAndroidスタジオのjsonオブジェクトに変換する

["Sarajevo","Mostar","Tuzla","Banja Luka","Zagreb","Split","Beograd"] 

アンドロイドスタジオで私はビューモデルクラスを作成しました。私は、Web APIで

public class GradoviApi { 

public static void GetGradovi (final Context context, final MyRunnable<GradoviVM> onSuccess) 
{ 
    String url = Config.url + "/api/gradovi"; 

    MyVolley.get(url, GradoviVM.class, new Response.Listener<GradoviVM>() { 
     @Override 
     public void onResponse(GradoviVM response) { 
      onSuccess.run(response); 
     } 
    }, new Response.ErrorListener() { 
     @Override 
     public void onErrorResponse(VolleyError error) { 
      Toast.makeText(MyApp.getContext(), "Greška u komunikaciji sa serverom: " + error.getMessage(), Toast.LENGTH_LONG).show(); 
     } 
    }); 
} 
} 

を通信している機能の実装を持っており、これは、自動完全なテキストビューは

public class PretragaActivity extends AppCompatActivity { 

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

    GradoviApi.GetGradovi(this, new MyRunnable<GradoviVM>() { 
     @Override 
     public void run(GradoviVM result) { 

     } 

    }); 
    GradoviVM gradovi = new GradoviVM(); 
    List<String> nazivi = gradovi.Get(); 
    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_dropdown_item_1line, nazivi); 
    AutoCompleteTextView actv = (AutoCompleteTextView) findViewById(R.id.mjestoPolaskaACTV); 
    actv.setAdapter(adapter); 
} 
}; 

エラーが言うある活動からのコードですGradoviApiクラスで

public class GradoviVM{ 

public List<String> Naziv; 

public List<String> Get() 
{ 
    return Naziv; 
} 
} 

期待されるタイプはBeginオブジェクトですが、Begin配列です。

答えて

0

あなたのモデルクラスは、マップされているjsonにNazivというプロパティがあると仮定しています。

MyVolley.get(url, GradoviVM.class, new Response.Listener<ArrayList<String>>() 
のようなコードを更新することができます。
関連する問題