uknownothingsnow / CircleProgress

CircleProgress, DonutProgress, ArcProgress
3.81k stars 921 forks source link

Arc Angle Problem #45

Open ademar111190 opened 8 years ago

ademar111190 commented 8 years ago

When I add the arc_angle property in my ArcProgress:

<com.github.lzyzsd.circleprogress.ArcProgress
        android:id="@+id/arc"
        android:layout_width="100dp"
        android:layout_height="100dp"
        app:arc_angle="360"/>

I get a warning: Dimension "360" in attribute "arc_angle" is missing unit!

And if I ignore the warning and run I get an exception:

android.view.InflateException: Binary XML file line #20: Error inflating class com.github.lzyzsd.circleprogress.ArcProgress
    at android.view.LayoutInflater.createView(LayoutInflater.java:640)
    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:750)
    at android.view.LayoutInflater.rInflate(LayoutInflater.java:813)
    at android.view.LayoutInflater.inflate(LayoutInflater.java:511)
    at android.view.LayoutInflater.inflate(LayoutInflater.java:415)
    ...
 Caused by: java.lang.reflect.InvocationTargetException
    at java.lang.reflect.Constructor.newInstance(Native Method)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:288)
    at android.view.LayoutInflater.createView(LayoutInflater.java:614)
    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:750) 
    at android.view.LayoutInflater.rInflate(LayoutInflater.java:813) 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:511) 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:415) 
    ...
 Caused by: java.lang.UnsupportedOperationException: Can't convert to dimension: type=0x4
    at android.content.res.TypedArray.getDimension(TypedArray.java:508)
    at com.github.lzyzsd.circleprogress.ArcProgress.initByAttributes(ArcProgress.java:101)
    at com.github.lzyzsd.circleprogress.ArcProgress.<init>(ArcProgress.java:90)
    at com.github.lzyzsd.circleprogress.ArcProgress.<init>(ArcProgress.java:74)
    at java.lang.reflect.Constructor.newInstance(Native Method) 
    at java.lang.reflect.Constructor.newInstance(Constructor.java:288) 
    at android.view.LayoutInflater.createView(LayoutInflater.java:614) 
    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:750) 
    at android.view.LayoutInflater.rInflate(LayoutInflater.java:813) 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:511) 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:415)

Observation: I'm using this view in a fragment

padobariya commented 8 years ago

@ademar111190 did you find any work around for this ? I am having same problem.

ademar111190 commented 8 years ago

@padobariya no. I'm setting this attribute on java side while the bug has no solution

literakl commented 8 years ago

same problem: http://stackoverflow.com/questions/36663458/dimension-units-for-angle