You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
MiNote/widget/NoteWidgetProvider_2x.java

84 lines
2.8 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

/*
* Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package net.micode.notes.widget;
import android.appwidget.AppWidgetManager;
import android.content.Context;
import net.micode.notes.R;
import net.micode.notes.data.Notes;
import net.micode.notes.tool.ResourceParser;
/**
* NoteWidgetProvider_2x 是 NoteWidgetProvider 的具体实现类,
* 负责管理和更新 2x 尺寸的便签桌面小部件。
*
* 2x 小部件通常指占用 2 列 x 2 行网格空间的桌面部件,
* 适合展示中等长度的便签内容。
*/
public class NoteWidgetProvider_2x extends NoteWidgetProvider {
/**
* 当小部件更新时调用此方法。
* 继承自 AppWidgetProvider在此实现中调用父类的 update 方法处理更新逻辑。
*
* @param context 应用上下文
* @param appWidgetManager AppWidgetManager 实例,用于管理小部件
* @param appWidgetIds 需要更新的小部件 ID 数组
*/
@Override
public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) {
// 调用父类的 update 方法处理小部件更新逻辑
super.update(context, appWidgetManager, appWidgetIds);
}
/**
* 获取 2x 小部件的布局资源 ID。
* 此方法由父类抽象方法定义,返回适用于 2x 小部件的布局文件。
*
* @return 布局资源 ID (R.layout.widget_2x)
*/
@Override
protected int getLayoutId() {
return R.layout.widget_2x;
}
/**
* 根据背景 ID 获取对应的 2x 小部件背景资源。
* 此方法由父类抽象方法定义,使用 ResourceParser 工具类获取适合 2x 小部件的背景图资源。
*
* @param bgId 背景颜色 ID
* @return 对应的背景资源 ID
*/
@Override
protected int getBgResourceId(int bgId) {
return ResourceParser.WidgetBgResources.getWidget2xBgResource(bgId);
}
/**
* 获取当前小部件的类型。
* 此方法由父类抽象方法定义,返回标识 2x 小部件的类型常量。
*
* @return 小部件类型常量 (Notes.TYPE_WIDGET_2X)
*/
@Override
protected int getWidgetType() {
return Notes.TYPE_WIDGET_2X;
}
}