Как мне обновить TextView, используя 2 отдельных счетчика, не независимых друг от друга?

#android #textview #android-spinner

#Android #textview #android-счетчик

Вопрос:

В этом приложении каждый счетчик используется для выполнения вызова API. Теперь счетчик 1 предназначен для монеты (крипто), а 2 — для валюты (USD, иена и т.д.), В которой должна отображаться монета. Счетчик 1 работает отлично! Но счетчик 2 не будет обновлять TextView.

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

    mPriceTextView = findViewById(R.id.priceLabel);
    Spinner spinner1 = findViewById(R.id.currency_spinner);
    Spinner spinner2 = findViewById(R.id.coin_spinner);
    // Create an ArrayAdapter using the String array and a spinner layout
    ArrayAdapter<CharSequence> adapter1 = ArrayAdapter.createFromResource(this, R.array.currency_array, R.layout.spinner_item);
    ArrayAdapter<CharSequence> adapter2 = ArrayAdapter.createFromResource(this, R.array.coin_array, R.layout.spinner_item);
    // Specify the layout to use when the list of choices appears
    adapter1.setDropDownViewResource(R.layout.spinner_dropdown_item);
    adapter2.setDropDownViewResource(R.layout.spinner_dropdown_item);
    // Apply the adapter to the spinner
    spinner1.setAdapter(adapter1);
    spinner2.setAdapter(adapter2);
    // TODO: Set an OnItemSelected listener on the spinner
    spinner1.setOnItemSelectedListener(new OnItemSelectedListener() {
        @Override
        public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
            Log.d("Bitcoin-Ticker", ""   parent.getItemAtPosition(position));
            Toast.makeText(getApplicationContext(), "Spinner has been set with listener "   parent.getItemAtPosition(position).toString(), Toast.LENGTH_SHORT).show();
            Log.d("Bitcoin-Ticker", "Final url1 is: "   parent.getItemAtPosition(position).toString());
            finalUrl1 = parent.getItemAtPosition(position).toString();
            update();
        }

        @Override
        public void onNothingSelected(AdapterView<?> parent) {
            Log.d("Bitcoin-Ticker", "No item selected.");
        }
    });
    spinner2.setOnItemSelectedListener(new OnItemSelectedListener() {
        @Override
        public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
            Log.d("Bitcoin-Ticker", ""   parent.getItemAtPosition(position));
            Toast.makeText(getApplicationContext(), "Spinner has been set with listener"   parent.getItemAtPosition(position).toString(), Toast.LENGTH_SHORT).show();
            Log.d("Bitcoin-Ticker", "Spinner choice is: "   parent.getItemAtPosition(position));
            String spinItem = parent.getItemAtPosition(position).toString();
            finalUrl2 = parent.getItemAtPosition(position).toString();
            if (spinItem.equals("BTC")) {
                finalUrl2 = BASE_URL1   finalUrl1;

            } else {
                finalUrl2 = BASE_URL2   finalUrl1;

            }
            Log.d("Bitcoin-Ticker", "Final url2 is: "   finalUrl2);
            update();
        }

        @Override
        public void onNothingSelected(AdapterView<?> parent) {

        }
    });
}
  

Комментарии:

1. Добро пожаловать в Stackoverflow! итак, ваша проблема в update ()? что бы вы хотели там сделать?

2. Нам нужно будет увидеть этот метод update ().