Answers:
这是你的答案
colorStr=getResources().getString(R.color.someColor);
你会得到
colorStr = "#123456"
//noinspection ResourceType在语句的上方添加。
getResources().getString(0+R.color.someColor);作品
只是为了方便copypasta:
"#" + Integer.toHexString(ContextCompat.getColor(getActivity(), R.color.some_color));
或者,如果您希望没有透明度:
"#" + Integer.toHexString(ContextCompat.getColor(getActivity(), R.color.some_color) & 0x00ffffff);
'#' + Integer.toHexString(getResources().getColor(R.color.someColor);因为后来我在Color.parseColor
导致getResources().getColor需要api>23。所以这更好:只是为了方便复制和粘贴:
Integer.toHexString( ContextCompat.getColor( getContext(), R.color.someColor ) );
或者,如果您希望没有透明度:`
Integer.toHexString( ContextCompat.getColor( getContext(), R.color.someColor ) & 0x00ffffff );
ContextCompat.getColor不接受3个论点
如果发生错误,请添加@SuppressLint(“ ResourceType”)。像吼叫
private String formatUsernameAction(UserInfo userInfo, String action) {
String username = userInfo.getUsername();
@SuppressLint("ResourceType") String usernameColor = getContext().getResources().getString(R.color.background_button);
return "<font color=\""+usernameColor+"\">" + username
+ "</font> <font color=\"#787f83\">" + action.toLowerCase() + "</font>";
}