|  |  |  | @ -32,6 +32,7 @@ import net.micode.notes.tool.ResourceParser; | 
			
		
	
		
			
				
					|  |  |  |  | import net.micode.notes.ui.NoteEditActivity; | 
			
		
	
		
			
				
					|  |  |  |  | import net.micode.notes.ui.NotesListActivity; | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | // 该类实现了桌面中的窗口小部件
 | 
			
		
	
		
			
				
					|  |  |  |  | public abstract class NoteWidgetProvider extends AppWidgetProvider { // 小米便签窗口小部件
 | 
			
		
	
		
			
				
					|  |  |  |  |     public static final String [] PROJECTION = new String [] { | 
			
		
	
		
			
				
					|  |  |  |  |         NoteColumns.ID, | 
			
		
	
	
		
			
				
					|  |  |  | @ -46,7 +47,7 @@ public abstract class NoteWidgetProvider extends AppWidgetProvider { // 小米 | 
			
		
	
		
			
				
					|  |  |  |  |     private static final String TAG = "NoteWidgetProvider"; | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     @Override | 
			
		
	
		
			
				
					|  |  |  |  |     public void onDeleted(Context context, int[] appWidgetIds) { | 
			
		
	
		
			
				
					|  |  |  |  |     public void onDeleted(Context context, int[] appWidgetIds) { // 重写删除窗口小部件函数
 | 
			
		
	
		
			
				
					|  |  |  |  |         ContentValues values = new ContentValues(); | 
			
		
	
		
			
				
					|  |  |  |  |         values.put(NoteColumns.WIDGET_ID, AppWidgetManager.INVALID_APPWIDGET_ID); | 
			
		
	
		
			
				
					|  |  |  |  |         for (int i = 0; i < appWidgetIds.length; i++) { | 
			
		
	
	
		
			
				
					|  |  |  | @ -57,7 +58,7 @@ public abstract class NoteWidgetProvider extends AppWidgetProvider { // 小米 | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  |     } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     private Cursor getNoteWidgetInfo(Context context, int widgetId) { | 
			
		
	
		
			
				
					|  |  |  |  |     private Cursor getNoteWidgetInfo(Context context, int widgetId) { // 获取窗口小部件宽度信息
 | 
			
		
	
		
			
				
					|  |  |  |  |         return context.getContentResolver().query(Notes.CONTENT_NOTE_URI, | 
			
		
	
		
			
				
					|  |  |  |  |                 PROJECTION, | 
			
		
	
		
			
				
					|  |  |  |  |                 NoteColumns.WIDGET_ID + "=? AND " + NoteColumns.PARENT_ID + "<>?", | 
			
		
	
	
		
			
				
					|  |  |  | @ -70,7 +71,7 @@ public abstract class NoteWidgetProvider extends AppWidgetProvider { // 小米 | 
			
		
	
		
			
				
					|  |  |  |  |     } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     private void update(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds, | 
			
		
	
		
			
				
					|  |  |  |  |             boolean privacyMode) { | 
			
		
	
		
			
				
					|  |  |  |  |             boolean privacyMode) { // 更新窗口小部件中的内容
 | 
			
		
	
		
			
				
					|  |  |  |  |         for (int i = 0; i < appWidgetIds.length; i++) { | 
			
		
	
		
			
				
					|  |  |  |  |             if (appWidgetIds[i] != AppWidgetManager.INVALID_APPWIDGET_ID) { | 
			
		
	
		
			
				
					|  |  |  |  |                 int bgId = ResourceParser.getDefaultBgId(context); | 
			
		
	
	
		
			
				
					|  |  |  | @ -124,9 +125,9 @@ public abstract class NoteWidgetProvider extends AppWidgetProvider { // 小米 | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  |     } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     protected abstract int getBgResourceId(int bgId); | 
			
		
	
		
			
				
					|  |  |  |  |     protected abstract int getBgResourceId(int bgId); // 从背景资源中获取当前应用ID
 | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     protected abstract int getLayoutId(); | 
			
		
	
		
			
				
					|  |  |  |  |     protected abstract int getLayoutId(); // 获取布局ID
 | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     protected abstract int getWidgetType(); | 
			
		
	
		
			
				
					|  |  |  |  |     protected abstract int getWidgetType(); // 获取窗口小部件的类型,即2x2型或者4x4型
 | 
			
		
	
		
			
				
					|  |  |  |  | } | 
			
		
	
	
		
			
				
					|  |  |  | 
 |