Я сделал динамик динамически во время процесса входа в систему. Я хотел бы иметь возможность вернуть значение счетчика, когда я нажимаю на параметр, но он, похоже, не работает.Android Spinner setOnItemSelectedListener не работает
я сделать вертушку здесь:
public Spinner page_spinner;
protected void onCreate(Bundle savedInstanceState){
...
page_spinner = (Spinner) findViewById(R.id.page_spinner);
...
//MAKE ARRAY HERE
GraphRequest requestPage = GraphRequest.newGraphPathRequest(
currentAccessToken,
"/me/accounts",
new GraphRequest.Callback() {
@Override
public void onCompleted(GraphResponse response) {
JSONArray jsonArray = null;
try {
jsonArray = response.getJSONObject().getJSONArray("data");
for(int i=0; i < jsonArray.length(); i++){
JSONObject page = jsonArray.getJSONObject(i);
String pageName = page.getString("name");
if(!pageName.equals("")) {
//Push names into the array
pages_array.add(pageName);
} else {
pages_array.clear();
}
}
} catch (JSONException e) {
e.printStackTrace();
}
}
});
Bundle pageParameters = new Bundle();
pageParameters.putString("fields", "name,access_token,picture{url}");
requestPage.setParameters(pageParameters);
requestPage.executeAsync();
...
ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<String>(StartPage.this, android.R.layout.simple_spinner_item, pages_array);
spinnerArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); // The drop down view
page_spinner.setAdapter(spinnerArrayAdapter);
spinnerArrayAdapter.notifyDataSetChanged();
тогда, когда я пытаюсь использовать блесну здесь:
page_spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
Log.d("***********", "THIS ");
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
Log.d("***********", "THIS ");
}
});
Я никогда не получить Log.d
или даже если я сделал Toast
там, не срабатывает. Не знаю, почему это останавливается, и я не получаю никаких ошибок.
Любые идеи?
Вы можете добавить инициализацию и код генерации массива, а также для примера –
@RajenRaiyarela, Добавлено, но сейчас я редактирую комментарии и экстраординарный код прямо сейчас – ntgCleaner
@RajenRaiyarela, я отбраковал код, поэтому он показывает, как я 'm making the array – ntgCleaner