如何解决Android Spinner Text选择的文字设计延迟
尝试在微调器中更改选定的文本设计时遇到问题。
我已经看到很多关于如何执行此操作的文章,他们都建议为我的微调器创建一个OnItemSelectedListener来更改所选文本。
这就是我所做的:
@Override
public void onItemSelected(AdapterView<?> parent,View view,int position,long id) {
changeTextSize((TextView) parent.getChildAt(0),context);
}
private void changeTextSize(final TextView spinnerTextSelected,final Context context) {
DisplayMetrics displayMetrics = context.getResources().getDisplayMetrics();
final float scale = displayMetrics.density;
final int width = displayMetrics.widthPixels;
int dps = (width < 500)? 150 : 200; // on veut convertir x dps en pixel
int pixels = (int) (dps * scale + 0.5f);
spinnerTextSelected.setTextSize(TypedValue.COMPLEX_UNIT_SP,12);
spinnerTextSelected.setTextColor(context.getResources().getColor(android.R.color.tab_indicator_text));
spinnerTextSelected.setTypeface(null,Typeface.BOLD_ITALIC);
spinnerTextSelected.setMaxWidth(pixels);
}
不幸的是,每次我在微调器中选择一个项目时,在应用颜色之前都会有一个延迟。
我看过一些帖子,他们在这里有同样的问题: Setting spinner text color programmatically lags,is slow,is wrong color for split second,但对我没有帮助
有人有同样的问题吗?我该如何解决它,我必须创建一个自定义适配器吗? 谢谢!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。