0

我正在寻找一种方法来更改 Xamarin Studio 中标准 android ProgressBar 的色调和背景颜色。找到了一些关于如何在 java 中完成此操作的提示,如下所示:

myprogress.setBackgroundDrawable(c.getResources().getDrawable(R.drawable.progress));

但我不知道如何在 Xamarin 中使用它。我还看到了相当大的 xml 文件,制作渐变背景。但是不应该有一种简单的方法来改变没有任何渐变的颜色吗?

4

2 回答 2

1

你可能应该这样做。

在 res/values 通过添加添加新样式

<style name="Theme.MyAppTheme.Process" parent="android:Theme.Light">
<item name ="android:background">#2D2D2D</item>
<item name ="background">#2D2D2D</item>
</style>

现在在您的 ProgressBar 中使用此样式。

myprogress.setProgressStyle(R.style.Process);

您可以更改样式背景中的颜色代码..

于 2013-09-10T11:38:23.883 回答
0

要将 Java 转换为 C#,它看起来像这样:

myprogress.SetBackgroundDrawable(Resources.GetDrawable(Resource.Drawable.progress));

您需要做的就是将要用作背景的可绘制对象(png、xml 等)放入 Resources/drawable 文件夹中。如果你只想要一个渐变,你应该使用 xml 而不是位图。在 Resources/drawable 文件夹中创建一个新的 xml 文件,这是一个蓝色渐变的示例:

<?xml version="1.0" encoding="UTF-8" ?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <gradient 
        android:startColor="#065b92"
        android:endColor="#1183ce"
        android:type="linear"
        />
</shape>
于 2013-09-12T20:58:38.947 回答