问题概述
对于初学者来说,Spinner作为弹出选择框是一个很好的选择.但是笔者在使用Spinner的时候碰到一些问题.就是关于默认文本框样式的问题,在搜索引擎搜了很多资料都没有找到相关的解决方案.大体的资料一般都是自定义Spinner的二级菜单.所以这里我就不对自定义二级菜单的方法进行赘述.最后在stackOverflow找到了解决方案.
解决方案
重写Spinner空间的OnItemSelectedListener方法中的onItemSelected方法.然后获取其位置为0的元素(默认为TextView),然后通过TextView的方法对字体和颜色进行修改.笔者的编译环境为Android 6.0;
spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
spinner.setSelection(position);
TextView textView = (TextView) parent.getChildAt(0);
textView.setTextColor(ContextCompat.getColor(StarActivity.this,R.color.black));
textView.setTextSize(15);
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});