捡代码论坛-最全的游戏源码下载技术网站!

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
关于源码区的附件失效或欺骗帖, 处理办法捡代码论坛官方微信,不定期分享免费优质资源下载
查看: 4736|回复: 26

[安卓,android源码] 小米便签产品级的源码

[复制链接]

2056

主题

2244

帖子

7万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
75864
QQ
发表于 2016-7-28 09:53:58 | 显示全部楼层 |阅读模式
小米便签产品级的源码
码简介

小米便签Android源码,可以在桌面创建widget。



源码截图



源码片段:
  1. public abstract class NoteWidgetProvider extends AppWidgetProvider {
  2.     public static final String [] PROJECTION = new String [] {
  3.         NoteColumns.ID,
  4.         NoteColumns.BG_COLOR_ID,
  5.         NoteColumns.SNIPPET
  6.     };
  7.      
  8.     public static final int COLUMN_ID           = 0;
  9.     public static final int COLUMN_BG_COLOR_ID  = 1;
  10.     public static final int COLUMN_SNIPPET      = 2;
  11.      
  12.     private static final String TAG = "NoteWidgetProvider";
  13.      
  14.     @Override
  15.     public void onDeleted(Context context, int[] appWidgetIds) {
  16.         ContentValues values = new ContentValues();
  17.         values.put(NoteColumns.WIDGET_ID, AppWidgetManager.INVALID_APPWIDGET_ID);
  18.         for (int i = 0; i < appWidgetIds.length; i++) {
  19.             context.getContentResolver().update(Notes.CONTENT_NOTE_URI,
  20.                     values,
  21.                     NoteColumns.WIDGET_ID + "=?",
  22.                     new String[] { String.valueOf(appWidgetIds)});
  23.         }
  24.     }
  25.      
  26.     private Cursor getNoteWidgetInfo(Context context, int widgetId) {
  27.         return context.getContentResolver().query(Notes.CONTENT_NOTE_URI,
  28.                 PROJECTION,
  29.                 NoteColumns.WIDGET_ID + "=? AND " + NoteColumns.PARENT_ID + "<>?",
  30.                 new String[] { String.valueOf(widgetId), String.valueOf(Notes.ID_TRASH_FOLER) },
  31.                 null);
  32.     }
  33.      
  34.     protected void update(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) {
  35.         update(context, appWidgetManager, appWidgetIds, false);
  36.     }
  37.      
  38.     private void update(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds,
  39.             boolean privacyMode) {
  40.         for (int i = 0; i < appWidgetIds.length; i++) {
  41.             if (appWidgetIds != AppWidgetManager.INVALID_APPWIDGET_ID) {
  42.                 int bgId = ResourceParser.getDefaultBgId(context);
  43.                 String snippet = "";
  44.                 Intent intent = new Intent(context, NoteEditActivity.class);
  45.                 intent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
  46.                 intent.putExtra(Notes.INTENT_EXTRA_WIDGET_ID, appWidgetIds);
  47.                 intent.putExtra(Notes.INTENT_EXTRA_WIDGET_TYPE, getWidgetType());
  48.      
  49.                 Cursor c = getNoteWidgetInfo(context, appWidgetIds);
  50.                 if (c != null && c.moveToFirst()) {
  51.                     if (c.getCount() > 1) {
  52.                         Log.e(TAG, "Multiple message with same widget id:" + appWidgetIds);
  53.                         c.close();
  54.                         return;
  55.                     }
  56.                     snippet = c.getString(COLUMN_SNIPPET);
  57.                     bgId = c.getInt(COLUMN_BG_COLOR_ID);
  58.                     intent.putExtra(Intent.EXTRA_UID, c.getLong(COLUMN_ID));
  59.                     intent.setAction(Intent.ACTION_VIEW);
  60.                 } else {
  61.                     snippet = context.getResources().getString(R.string.widget_havenot_content);
  62.                     intent.setAction(Intent.ACTION_INSERT_OR_EDIT);
  63.                 }
  64.      
  65.                 if (c != null) {
  66.                     c.close();
  67.                 }
  68.      
  69.                 RemoteViews rv = new RemoteViews(context.getPackageName(), getLayoutId());
  70.                 rv.setImageViewResource(R.id.widget_bg_image, getBgResourceId(bgId));
  71.                 intent.putExtra(Notes.INTENT_EXTRA_BACKGROUND_ID, bgId);
  72.                 /**
  73.                  * Generate the pending intent to start host for the widget
  74.                  */
  75.                 PendingIntent pendingIntent = null;
  76.                 if (privacyMode) {
  77.                     rv.setTextViewText(R.id.widget_text,
  78.                             context.getString(R.string.widget_under_visit_mode));
  79.                     pendingIntent = PendingIntent.getActivity(context, appWidgetIds, new Intent(
  80.                             context, NotesListActivity.class), PendingIntent.FLAG_UPDATE_CURRENT);
  81.                 } else {
  82.                     rv.setTextViewText(R.id.widget_text, snippet);
  83.                     pendingIntent = PendingIntent.getActivity(context, appWidgetIds, intent,
  84.                             PendingIntent.FLAG_UPDATE_CURRENT);
  85.                 }
  86.      
  87.                 rv.setOnClickPendingIntent(R.id.widget_text, pendingIntent);
  88.                 appWidgetManager.updateAppWidget(appWidgetIds, rv);
  89.             }
  90.         }
  91.     }
  92.      
  93.     protected abstract int getBgResourceId(int bgId);
  94.      
  95.     protected abstract int getLayoutId();
  96.      
  97.     protected abstract int getWidgetType();
  98. }
复制代码
MiCode便签是小米便签的社区开源版,由MIUI团队发起并贡献第一批代码

源码下载:

游客,如果您要查看本帖隐藏内容请回复


小米便签产品级的源码
http://bbs.jiandaima.com/thread-515-1-1.html

捡代码论坛-最全的游戏源码下载技术网站! - 论坛版权1、本主题所有言论和图片纯属会员个人意见,与本论坛立场无关
2、本站所有主题由该帖子作者发表,该帖子作者与捡代码论坛-最全的游戏源码下载技术网站!享有帖子相关版权
3、捡代码论坛版权,详细了解请点击。

回复

使用道具 举报

0

主题

2

帖子

14

积分

新手上路

Rank: 1

积分
14
发表于 2016-8-9 09:19:23 | 显示全部楼层
看看产品级是什么样子的
回复 支持 反对

使用道具 举报

0

主题

7

帖子

46

积分

微信用户

Rank: 1

积分
46
发表于 2016-8-14 01:34:42 | 显示全部楼层

这个帖子不错,大家快来顶起来!捡代码论坛资源就是不错。
回复 支持 反对

使用道具 举报

0

主题

3

帖子

18

积分

新手上路

Rank: 1

积分
18
发表于 2016-9-15 11:40:12 | 显示全部楼层
学习楼主 学习了
- 本文出自捡代码论坛-最全的游戏源码下载技术网站!,原文地址:http://bbs.jiandaima.com/thread-167-1-1.html
回复 支持 反对

使用道具 举报

1

主题

27

帖子

185

积分

注册会员

Rank: 2

积分
185
发表于 2016-9-17 00:01:56 | 显示全部楼层
这个帖子不错,大家快来顶起来!捡代码论坛资源就是不错。
回复 支持 反对

使用道具 举报

0

主题

206

帖子

1033

积分

金牌会员

Rank: 6Rank: 6

积分
1033
发表于 2016-11-9 09:22:49 | 显示全部楼层
这个资源不错。感谢楼主!……来自于捡代码论坛
回复 支持 反对

使用道具 举报

0

主题

3

帖子

25

积分

新手上路

Rank: 1

积分
25
发表于 2016-12-28 16:37:57 | 显示全部楼层
66666666666666666666
回复 支持 反对

使用道具 举报

0

主题

21

帖子

65

积分

注册会员

Rank: 2

积分
65
发表于 2017-1-5 10:16:48 | 显示全部楼层
感谢楼主
回复

使用道具 举报

0

主题

22

帖子

57

积分

注册会员

Rank: 2

积分
57
发表于 2017-1-11 15:03:44 | 显示全部楼层
小米便签产品级的源码
- 本文出自捡代码论坛-最全的游戏源码下载技术网站!,原文地址:http://bbs.jiandaima.com/thread-515-1-1.html
回复 支持 反对

使用道具 举报

0

主题

21

帖子

57

积分

注册会员

Rank: 2

积分
57
发表于 2017-1-12 14:50:01 | 显示全部楼层
学习学习
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

技术支持
在线咨询
QQ咨询
3351529868

QQ|RSS订阅|Archiver|手机版|小黑屋|捡代码论坛-专业源码分享下载 ( 陕ICP备15015195号-1|网站地图

GMT+8, 2018-10-17 22:41 , Processed in 0.126638 second(s), 34 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表