0

Я использую простой счетчик для отображения значений бай-в в целочисленном массиве. Ошибка в Gradle Build говорит: method getOnItemSelectedListener in class AdapterView<T> cannot be applied to given types. Нет необходимых аргументов, и причина ошибки указана как: actual and formal arguments lists differ in length where T is a type-variable: T extends Adapter declared in class AdapterView. Я не знаю, как исправить ошибку, которая появляется на (this):Ошибка Android Spinner: getOnItemSelectedListener в AdapterView не может быть применен

spinner.getOnItemSelectedListener(this); 

Я бы предположил, что это правильная практика, как я говорю вертушку, что this активность отвечает за прослушивание событий на блесны.

Вот мой код:

import android.app.Activity; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.AdapterView; 
import android.widget.ArrayAdapter; 
import android.widget.Spinner; 
import android.widget.TextView; 
import android.widget.Toast; 


public class HomeActivity extends Activity implements AdapterView.OnItemSelectedListener{ 

    Spinner spinner; 

    @Override 
    public void onCreate(Bundle savedInstanceState) 
    { 
     super.onCreate(savedInstanceState); 
     // Get the view from home_activity.xml 
     setContentView(R.layout.home_activity); 

     // initialize spinner 
     spinner = (Spinner) findViewById(R.id.buyInSpinner); 

     ArrayAdapter adapter = ArrayAdapter.createFromResource(this, R.array.buy_in, android.R.layout.simple_spinner_item); 
     spinner.setAdapter(adapter); 
     spinner.getOnItemSelectedListener(this); 

    } // end onCreate method 

    @Override 
    public void onItemSelected(AdapterView<?> adapterView, View v, int i, long l) 
    { 
     TextView myText = (TextView) v; 
     Toast.makeText(this, "You Selected "+myText.getText(), Toast.LENGTH_SHORT).show(); 
    } // end onItemSelected method 

    @Override 
    public void onNothingSelected(AdapterView<?> adapterView) 
    { 
     Toast.makeText(this, "You Must Buy-In To Play", Toast.LENGTH_SHORT).show(); 
    } // end onNothingSelected method 

} // end HomeActivity class 

ответ

1

Почему вы хотите получить без переменной? Я думаю, что в этом случае вы должны использовать spinner.setOnItemSelectedListener(this); вместо

+0

Ничего себе. Ошибка Нооба и небольшой надзор. Это всегда что-то простое, что упускается из виду. Благодарю. – NOSDUH