Boa tarde, galera!
Já venho pesquisando há algum tempo sobre como colocar hint no componente Spinner, mas só encontro exemplos usando um array de Strings direto no código java. Algo como:
private String[] promotores = {"Selecione" ,"promotor","promotor","promotor","promotor","promotor"};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_cadastro_processo);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
spPromotores = (Spinner) findViewById(R.id.spinner_promotores);
// final ArrayAdapter<CharSequence> adapterSpinner = ArrayAdapter.createFromResource(this, R.array.promotores, android.R.layout.simple_spinner_item);
// adapterSpinner.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
// spPromotores.setAdapter(adapterSpinner);
// Inicializando o arrayAdapter
final ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<String>(
this, R.layout.support_simple_spinner_dropdown_item, promotores) {
@Override
public boolean isEnabled(int position) {
if (position == 0) {
// Disable the first item from Spinner
// First item will be use for hint
return false;
} else {
return true;
}
}
@Override
public View getDropDownView(int position, View convertView,
ViewGroup parent) {
View view = super.getDropDownView(position, convertView, parent);
TextView tv = (TextView) view;
if (position == 0) {
// Set the hint text color gray
tv.setTextColor(Color.GRAY);
} else {
tv.setTextColor(Color.BLACK);
}
return view;
}
};
spinnerArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spPromotores.setAdapter(spinnerArrayAdapter);
// Finalizando o arrayAdapter
Notem que no começo estou criando um array de strings, porém eu queria pegar as strings direto do xml que criei justamente para isso:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string-array name="promotores">
<item>Promotor 1</item>
<item>Promotor 2</item>
<item>Promotor 3</item>
<item>Promotor 4</item>
<item>Promotor 5</item>
<item>Promotor 6</item>
<item>Promotor 7</item>
<item>Promotor 8</item>
<item>Promotor 9</item>
<item>Promotor 10</item>
</string-array>
</resources>
Mas dessa forma não consigo, como fiz no código comentado.
Alguém me dá um help?