如何将Android.Resource.Color转换为Android.Graphics.Color

时间:2014-09-23 10:20:40

标签: android xamarin

我的Android.Resource.Color值为Android.Resource.Color.HoloOrangeDark 我想将其转换为Android.Graphics.Color 我怎么能这样做?

3 个答案:

答案 0 :(得分:20)

Resources.GetColor已被弃用。请确保使用ContextCompat.GetColor代替。

所以

Resources.GetColor(Resource.Color.HoloOrangeDark);

将成为

int colorInt = ContextCompat.GetColor(this.Context, Resource.Color.HoloOrangeDark))

ContextCompat返回一个int,以便从中获取Color,只需创建一个新颜色并传入int。

Color color = new Color(colorInt);

答案 1 :(得分:7)

你可以试试这个:

Resources.GetColor(Resource.Color.HoloOrangeDark);

更新:
Resources.GetColor已被弃用。您可以使用ContextCompat,如下所示:

ContextCompat.GetColor(mContext, Resource.Color.HoloOrangeDark);

答案 2 :(得分:0)

也可以在Xamarin中尝试

int colorIntFG = ContextCompat.GetColor(this, Resource.Color.colorCardDaysFGAlert);

txtView.SetTextColor(new Android.Graphics.Color(colorIntFG));