I have a Spinner for currencies to choose from, so after selecting the Currency it should trigger the OnItemSelectedListener to do some code.
Spinner sp_Curr;
@Override
protected void onCreate(Bundle savedInstanceState) {
...
log.d(TAG, "onCreate Called");
sp_Curr = findViewById(R.id.sp_Curr);
sp_Curr.setAdapter(curr_Adapter);
sp_Curr.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(...) {
// Just a code to do something
log.d(TAG, "onItemSelected triggered");
}
}
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
log.d(TAG, "button Clicked");
setCurrencyDefaultValue();
}
});
setCurrencyDefaultValue();
...
}
private void setCurrencyDefaultValue() {
...
sp_Curr.setSelection(selectedIndex);
log.d(TAG, "Curr setSelection Called");
...
}
In all kinds of android phones (Samsung, Oppo...) everything it just works fine ✔
But with Huawei phones it selects the item, but OnItemSelectedListener is sometimes triggered, and sometimes it doesn't.
especially if setSelection() called from onCreate(), I don't know what happens.
All kinds of android phones log
D/Sale Activity: onCreate Called
D/Sale Activity: Curr setSelection Called
D/Sale Activity: onItemSelected triggered
D/Sale Activity: button Clicked
D/Sale Activity: Curr setSelection Called
D/Sale Activity: onItemSelected triggered
With Huawei phones log
D/Sale Activity: onCreate Called
D/Sale Activity: Curr setSelection Called
D/Sale Activity: button Clicked
D/Sale Activity: Curr setSelection Called
D/Sale Activity: onItemSelected triggered
BIG NOTE
It is unstable during testing, and there is no Google API Service I can blame in the middle of the process, not as far as I know.
