2016-02-15 149 views
0

仍在学习。已经阅读了很多,但我现在停留在一些语法上(我认为)。Android角度旋转

我的小部件Android应该按照与一年中某天计算出的角度来旋转imageView。

我的代码是:

public int angle(Calendar calendarDate) { 
    //Earth rotation; 
    int day = calendarDate.get(Calendar.DAY_OF_YEAR); 
    int angle; 
    angle = (day/365) * 360; 
    return angle; 
} 

public void updateAppWidget(Context context, AppWidgetManager appWidgetManager, 
          int appWidgetId) { 

    int angle; 
    angle = angle(Calendar.getInstance()); 

...

tempCanvas.rotate(angle, pngOriginal.getWidth()/2, pngOriginal.getHeight()/2); 

...

无差错运行时一闪而过,但它不旋转 - 我究竟做错了什么? (我尝试将角度从int更改为float ...它仍然不起作用。)
帮助将非常受欢迎。

回答

0

我改变:

public int angle(Calendar calendarDate) { 
    int day = calendarDate.get(Calendar.DAY_OF_YEAR); 
    int angle; 
    angle = (day/365) * 360; 
    return angle; 
} 

到:

public static float angle(Calendar calendarDate) { 

     float day; 
     day = calendarDate.get(Calendar.DAY_OF_YEAR); 
     float angle; 
     angle = (day/365) * 360; 
     return angle; 
    } 

它现在。