appwidget的按钮能响应,但数据不正确
appwidget 有一个textview显示数据,有两个按钮分别是上一条、下一条;如果下一条已到数据末端,则变为第一条,上一条按钮则反之。现在我没按一次按钮,currentSch显示的都是0,虽然加1后变1,但再次按下按钮,索引加1前还是显示是0,有大神知道这是什么问题吗?困扰了一天了。。。
private int currentSch = 0;//记录当前数据的索引
@Override
public void onReceive(Context context, Intent intent) {
if (intent.hasCategory(Intent.CATEGORY_ALTERNATIVE)) {
int btn_id = intent.getIntExtra(EXTRA_BUTTON_ID, -1);
switch (btn_id) {
case R.id.next_btn_widget:
currentSch = currentSch + 1;
if (currentSch > str.length - 1) {
currentSch = 0;
}
RemoteViews next_remoteViews = new RemoteViews(context.getPackageName(),
R.layout.appwidget);
next_remoteViews.setTextViewText(R.id.tv_actiname_widget, str[currentSch]);
AppWidgetManager next_widgetmanager = AppWidgetManager.getInstance(context);
ComponentName componentName = new ComponentName(context, ScheduleWidgetProvider.class);
next_widgetmanager.updateAppWidget(componentName, next_remoteViews);
break;