微调框未显示默认值,或未显示默认值

时间:2020-09-21 20:50:38

标签: java android android-spinner

我用于数据库适配器的字符串列表是从数据库中获取的。它在下拉列表中显示了我检索到的字符串,但无其他地方。当我使用硬编码的字符串时,它可以正常工作。

我不知道为什么会这样,当我问我的教授时,我只是得到一个“我不知道,在网上查找”。我需要使其工作,因为这是我在大学的最后一个项目。

public class ObjectActivity extends AppCompatActivity implements View.OnClickListener {
    private Integer korisnikId;
    private String tip;
    private ArrayList<String> objekatList;
    private EditText inputBrojStolica;
    ApiInterface apiInterface;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_object);

        Bundle extra = getIntent().getExtras();
        korisnikId=extra.getInt("korisnikId");
        tip=extra.getString("tip");

        apiInterface= ApiClient.getClient(ApiInterface.class);


        initComponents();

    }

    public void initComponents() {
        Spinner spinnerObjekti = (Spinner) findViewById(R.id.spinnerObjekti);

        objekatList=dohvatiObjekteTipa(tip);

        ArrayAdapter<String> adapter = new ArrayAdapter<>(this, android.R.layout.simple_spinner_dropdown_item, objekatList);

        spinnerObjekti.setAdapter(adapter);

        ((Button)findViewById(R.id.buttonIzaberiObjekat)).setOnClickListener(this);
        inputBrojStolica=findViewById(R.id.inputBrojStolica);


    }
    @Override
    public void onClick(View v) {
        Bundle extra = new Bundle();
        extra.putInt("korisnikId",korisnikId);
        extra.putString("imeObjekta", (String) ((Spinner)findViewById(R.id.spinnerObjekti)).getSelectedItem());
        extra.putString("brojStolica",inputBrojStolica.getText().toString());

        startActivity(new Intent(this, NewReservationActivity.class).putExtras(extra));

    }

    private ArrayList<String> dohvatiObjekteTipa(String tip) {
        String tipObjekta=tip;
        final ArrayList<String> lista = new ArrayList<>();
            Call<ArrayList<Objekat>> callLanguage = apiInterface.dohvatiObjekteTipa(tipObjekta);
            final Dialog dialog = LoadDialog.loadDialog(ObjectActivity.this);
            dialog.show();
            callLanguage.enqueue(new Callback<ArrayList<Objekat>>()
            {
                @Override
                public void onResponse(Call<ArrayList<Objekat>> call, Response<ArrayList<Objekat>> response)
                {
                    if (dialog.isShowing())
                        dialog.dismiss();
                    if(response.code() == HttpURLConnection.HTTP_OK && response.body() != null){
                        ArrayList<Objekat> list=response.body();
                        for(int i=0; i<list.size();i++){
                           lista.add(list.get(i).getImeObjekta());
                        }
                        }
                    }


                @Override
                public void onFailure(Call<ArrayList<Objekat>> call, Throwable t)
                {
                    t.printStackTrace();
                    Toast.makeText(ObjectActivity.this, R.string.errornetwork, Toast.LENGTH_SHORT).show();
                    if (dialog.isShowing())
                        dialog.dismiss();

                }
            });
        return lista;
    }
}

0 个答案:

没有答案
相关问题