【发布时间】:2019-03-05 03:20:35
【问题描述】:
我有一个静态函数,我需要在其中访问我的颜色资源。为了访问颜色资源,我需要静态的上下文变量。如果我可以使上下文静态,我会感到困惑。它有任何副作用吗?或者,有没有其他方法可以在不使用上下文的情况下访问我的资源
这里是函数
private static SpannableStringBuilder setTextColor(
SpannableStringBuilder Text, int spanLength, boolean isSuggestion) {
addressText.setSpan(
new ForegroundColorSpan(
context
.getResources()
.getColor(
isSuggestion ? R.color.blur: R.color.red)),
addressText.length() - 1 - spanLength,
addressText.length(),
Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
return Text;
}
【问题讨论】:
-
你能显示所有相关代码吗?
-
贴一个代码sn-p 用一个例子,把上下文保存到一个静态变量中从来都不是一个好主意。
-
最好能提供代码。供您参考,将上下文设为静态并不是一个好主意,因为它会导致内存泄漏。
-
用代码更新了问题
-
为什么不把
Context作为方法参数传递给方法范围。
标签: java android kotlin static android-context