Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/359.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 我想让小部件工作活动';s法_Java_Android_Android Studio_Android Activity_Android Widget - Fatal编程技术网

Java 我想让小部件工作活动';s法

Java 我想让小部件工作活动';s法,java,android,android-studio,android-activity,android-widget,Java,Android,Android Studio,Android Activity,Android Widget,嗨,我正在制作Android应用程序,我想为它制作一个小部件。应用程序的概念是,它从“Voicemain\u活动”中获取stt(语音到文本)字符串,并将字符串放入“AddActivity”中创建的字段。在“AddActivity”中,有一个按钮可调用“Voicemain\u活动”。我正试图启动“Voicemain_活动”。所以我制作了这样的小部件代码。 公共类MyAppWidget扩展了AppWidgetProvider{ static void updateAppWidget(Context

嗨,我正在制作Android应用程序,我想为它制作一个小部件。应用程序的概念是,它从“Voicemain\u活动”中获取stt(语音到文本)字符串,并将字符串放入“AddActivity”中创建的字段。在“AddActivity”中,有一个按钮可调用“Voicemain\u活动”。我正试图启动“Voicemain_活动”。所以我制作了这样的小部件代码。 公共类MyAppWidget扩展了AppWidgetProvider{

static void updateAppWidget(Context context, AppWidgetManager appWidgetManager,
                            int appWidgetId) {
    //CharSequence widgetText = context.getString(R.string.appwidget_text);
    // Construct the RemoteViews object
    RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.my_app_widget);
    // views.setTextViewText(R.id.appwidget_text, widgetText);
    Intent intent=new Intent(context, AddActivity.class);
    PendingIntent pe=PendingIntent.getActivity(context, 0, intent, 0);
    views.setOnClickPendingIntent(R.id.imageButton_voice, pe);
    // Instruct the widget manager to update the widget
    appWidgetManager.updateAppWidget(appWidgetId, views);

}

@Override
public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) {

    super.onUpdate(context,appWidgetManager,appWidgetIds);
    // There may be multiple widgets active, so update all of them
    for (int appWidgetId : appWidgetIds) {
        updateAppWidget(context, appWidgetManager, appWidgetId);
    }
}

@Override
public void onEnabled(Context context) {
    // Enter relevant functionality for when the first widget is created
}

@Override
public void onDisabled(Context context) {
    // Enter relevant functionality for when the last widget is disabled
}
}

使获取“Voicemain_活动”的“AddActivity”如下所示

@Override
public void onClick(View v) {
    int view = v.getId();

    if(view == R.id.Bacode){
        finish();
    }
    else if(view == R.id.Voice){
        startActivityForResult(new Intent(this, VoiceMain_Activity.class), MY_UI);
    }
}

但这段代码使小部件只显示“Voicemain_活动”屏幕,没有获取字符串,也没有将其置于“AddActivity”中。如何使其工作?

问题有点令人困惑……问题是AddActivity正在启动Vociemain_活动,但没有返回结果?但是提供的代码主要是显示小部件框架中的方法?VoiceMain_活动是否调用setResult,AddActivity是否实现onActivityResult?请出示代码。此外,这可能有助于: