android可绘制圆圈,带有一个弧形

时间:2012-02-14 22:29:14

标签: android drawable geometry

我正在尝试绘制类似于进度条的东西。但是,在我的情况下,进度条是一个圆圈,具有不同颜色的扫描弧,如下所示(图2显示了设计的快照,其中一些进度由黄色表示)。作业完成后,整个圆圈将变为黄色。

enter image description here

为了做到这一点,我想使用xml布局创建一个圆圈,我可以使用以下代码执行此操作:

在res / drawable / circle.xml

<solid android:color="@color/red" />

<size
    android:height="200dp"
    android:width="200dp" />

<padding
    android:bottom="10dp"
    android:left="10dp"
    android:right="10dp"
    android:top="10dp" />

在我的主要布局中,我只是将其设置为framelayout的背景......          

   <FrameLayout
       android:id="@+id/frameLayout"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:background="@drawable/circle" >

   </FrameLayout>

</LinearLayout>

我知道如何使用http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/graphics/Arcs.html

上的android演示代码中给出的示例绘制弧

我正在努力解决如何将这两者结合起来创造一个全面的动作。我知道我们必须创建一个线程并创建一个类似于演示中的onDraw - 但是如何将扫描弧中心设置为绘制圆的中心? java代码将如何(在活动中)?感谢名单!

2 个答案:

答案 0 :(得分:3)

不要使用形状创建圆圈,而是通过此链接。

http://code.google.com/p/afreechart/

我希望它可以帮到你。

答案 1 :(得分:2)

我决定使用前面提到的演示中给出的解决方案。我创建了一个自定义视图来表示扫描弧。我把它放在代码中(只显示相关代码)

    <LinearLayout
       ...>

        <com.example.SweepingArcView
            android:id="@+id/sweepingArc"
            android:layout_width="210dp"
            android:layout_height="210dp"
            android:layout_marginTop="20dp"
            android:layout_weight="1" />

       ...
    </LinearLayout>

然后我绘制演示代码中给出的扫描弧。感谢所有回复的人!