import java.util.Date;
import android.appwidget.AppWidgetManager;
import android.appwidget.AppWidgetProvider;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Matrix;
import android.util.Log;
import android.widget.RemoteViews;
public class TimeWidgetProvider extends AppWidgetProvider {
private final String TAG="TimeWidgetProvider";
@Override
public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) {
RemoteViews updateViews = new RemoteViews(context.getPackageName(),R.layout.main);
Date dates=new Date();
int hour=dates.getHours()+8;
int min=dates.getMinutes();
int sec=dates.getSeconds();
Log.v(TAG, "sec="+sec);
updateViews.setImageViewBitmap(R.id.im2, getBitmap(context , hour, R.drawable.appwidget_clock_hour));
updateViews.setImageViewBitmap(R.id.im3, getBitmap(context , min, R.drawable.appwidget_clock_minute));
updateViews.setImageViewBitmap(R.id.im4, getBitmap(context , sec, R.drawable.appwidget_clock_minute));
//updateViews.setImageViewResource(R.id.im1, R.drawable.appwidget_clock_dial);
appWidgetManager.updateAppWidget(appWidgetIds, updateViews);
super.onUpdate(context, appWidgetManager, appWidgetIds);
}
private Bitmap getBitmap(Context context , int angle, int id){
// 加载需要操作的图片,这里是eoeAndroid的logo图片
Bitmap bitmapOrg = BitmapFactory.decodeResource(context.getResources(),
id);
//获取这个图片的宽和高
int width = bitmapOrg.getWidth();
int height = bitmapOrg.getHeight();
Log.v(TAG, "width="+width);
Log.v(TAG, "height="+height);
Log.v(TAG, "angle="+angle);
// bitmapOrg.ge
// 创建操作图片用的matrix对象
Matrix matrix = new Matrix();
//旋转图片 动作
matrix.postRotate(360/12*angle);
// 创建新的图片
Bitmap resizedBitmap = Bitmap.createBitmap(bitmapOrg, 0, 0,
width, height, matrix, true);
return resizedBitmap;
}
private Bitmap getBitmaps(Context context,int angle,int id){
Bitmap bitmapOrg=BitmapFactory.decodeResource(context.getResources(),id);
int width=bitmapOrg.getWidth();
int height=bitmapOrg.getHeight();
Matrix matrix=new Matrix();
matrix.postRotate(360/60*angle);
Bitmap resizedBitmap = Bitmap.createBitmap(bitmapOrg, 0, 0,
width, height, matrix, true);
return resizedBitmap;
}
private Bitmap getBitmapss(Context context,int angle,int id){
Bitmap bitmapOrg=BitmapFactory.decodeResource(context.getResources(), id);
int width=bitmapOrg.getWidth();
int height=bitmapOrg.getHeight();
Matrix matrix=new Matrix();
matrix.postRotate(360/60*angle);
Bitmap resizedBitmap = Bitmap.createBitmap(bitmapOrg, 0, 0,
width, height, matrix, true);
return resizedBitmap;
}
@Override
public void onEnabled(Context context) {
// TODO Auto-generated method stub
super.onEnabled(context);
Log.v("TAG", "onEnabled");
}
}
分享到:
相关推荐
在这个“node.js-clock时钟web服务器案例”中,我们将深入探讨如何使用Node.js创建一个简单的实时显示当前时间的Web服务器,以及如何自定义URL路径来扩展功能。 首先,让我们了解Node.js的基础。Node.js是一个开放...
Windows CE Clock时钟显示程序是一款专为Windows CE操作系统设计的应用,旨在提供一个高效且无闪烁的时钟界面。Windows CE是微软开发的一个嵌入式操作系统,广泛应用于掌上电脑、移动设备和工业控制系统等。这款时钟...
在编程领域,创建一个“clock时钟程序”是一项常见的练习,尤其对于学习C++语言的初学者来说。这个程序的核心是实现一个简单的时钟界面,能够显示当前的时间,并可能包括一些基本的设置或提醒功能。从提供的信息来看...
在Clock时钟提醒程序中,我们可以看到DELPHI的组件化编程思想,通过拖放组件到表单上,如TTimer(定时器)来实现定时触发提醒,以及TRichView或TMemo组件来展示提醒内容。 【图形处理类】在这里可能指的是用于创建...
标题中的“clock时钟格式”指的是计算机界面上的时间显示方式,通常在操作系统中,时钟是一种重要的用户界面元素,用于显示当前的日期和时间。在Windows系统中,时钟默认的样式是简单的小数字或者短语,但用户可能...
《深入解析Android Clock时钟源码》 在Android操作系统中,Clock组件是用户与系统时间交互的核心部分。本文将深入探讨“android Clock时钟源码.rar”中的关键知识点,带领开发者深入了解Android时钟功能的实现原理...
**CLOCK时钟置换算法**是操作系统中用于页面替换的一种高效策略,特别是在请求分页存储管理系统中。它的名称来源于其工作原理,就像一个时钟的指针遍历内存中的页面,寻找最适合替换的页面。CLOCK算法的主要目标是在...
clock时钟屏幕保护程序共享资源md:147852369123456
QT Clock时钟是一款基于QT Creator开发的C++应用程序,它实现了基本的时间显示功能,为学习QT框架和C++编程提供了一个实用的实例。QT是一个跨平台的开发框架,广泛用于创建图形用户界面(GUI)应用,同时支持命令行...
05.clock时钟web服务器.js
CLOCK时钟置换算法 (2).pdfCLOCK时钟置换算法 (2).pdfCLOCK时钟置换算法 (2).pdfCLOCK时钟置换算法 (2).pdfCLOCK时钟置换算法 (2).pdfCLOCK时钟置换算法 (2).pdfCLOCK时钟置换算法 (2).pdfCLOCK时钟置换算法 (2)....
- **wtg476_clock.gif**:可能是一个时钟的图形资源,用于美化程序的时钟显示或作为图标使用。 - **2ccc.com.nfo**:NFO文件通常是软件发布者提供的信息文件,可能包含了关于此VB6程序的额外说明或版权信息。 6. ...
总之,`vc-clock`时钟控件为VC++开发者提供了便捷的方式来整合时间显示功能,同时提供了足够的灵活性来适应各种界面设计和应用需求。通过深入理解和充分利用这个控件,开发者可以创建出更加高效、美观且用户友好的...
本演示源码主要是采用html5 canvas 技术实现的clock 时钟,包括了3种圆盘指针样式,每一款时钟的下边,是对应的数字时钟,是对上面圆盘时钟的补充。数字时钟按照时、分、秒的顺序依次和圆盘时钟的指针对应。除了使用...
跨时钟域信号处理是数字电路设计中的一个重要概念,特别是在使用Verilog等硬件描述语言设计同步系统时。系统中的不同模块或单元往往由不同的时钟源驱动,这导致了时钟域的出现。在不同的时钟域之间传递信号时,如果...
在计算机科学和编程领域,"clock_时钟_"这一主题主要涉及到系统时间的管理和表示,以及如何在程序中实现一个可以显示和更新当前时间的时钟功能。在本篇文章中,我们将深入探讨与时钟相关的知识点,包括操作系统中的...
单片机设计时钟程序,本人觉的不错的代码,可以让初学着参考
护眼卫士、定时提醒好几套破解版时钟软件。
HTML5时钟走针动画,做动态效果的不妨参考,HTML5 SVG Canvas动画效果实例,打开后即能看到时钟的秒针在随电脑上的秒数不停走动,用HTML5的方法来实现,比起JS来说,代码精简了很多倍。
。