我从girdview适配器类调用startActivityForResult事件。Gridview适配器类是由myFragment类创建的。intent extras始终返回null onActivityResult事件。你认为错误在哪里?谢了。
我的gridview适配器类;
public class MyAdapter extends ArrayAdapter<MyInfo> {
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View view = convertView;
if (view == null) {
LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
view = inflater.inflate(layoutResourceID, null);
}
ImageButton btnImage = (ImageButton) view.findViewById(R.id.btnImage);
@Override
public boolean onLongClick(View v) {
Intent intentCamera = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
intentCamera.putExtra("Asd", "Asd");
MyFragment.startActivityForResult(intentCamera, 1);
return true;
}
});
}
onActivityResult事件的MyFragment类
public class MyFragment extends Fragment {
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
ImageButton btn = (ImageButton) getActivity().findViewById(R.id.btnImage);
switch (requestCode) {
case 1:
Bitmap photo = (Bitmap) data.getExtras().get("data");
//photo is OK
Bundle bundle = data.getExtras();
if (bundle.getString("Asd") != null) {
//bundle.getString("Asd") NULL }
if (data.hasExtra("Asd")) {
//data.hasExtra("Asd") false
}
break;
default:
break;
}
}
}
您的自定义字符串“asd”不会被相机应用程序返回-这不是它的工作方式。
您可以期望将照片图像返回给您,也可以期望将图像文件返回给您。
如果你只是问“ASD”,那么这就是你的答案--你不会得到它。如果你问为什么没有图片回来,那么继续阅读。
private static final int CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE = 100;
private Uri fileUri;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// create Intent to take a picture and return control to the calling application
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
fileUri = getOutputMediaFileUri(MEDIA_TYPE_IMAGE); // create a file to save the image
intent.putExtra(MediaStore.EXTRA_OUTPUT, fileUri); // set the image file name
// start the image capture Intent
startActivityForResult(intent, CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE);
}
我试图捕捉图像和视频从我的android应用程序与默认相机使用意图。 使用上面的代码,我试图捕获图像,在中,我在处的数据中获得了Null 我尝试用意图传递Uri,但Uri为空。 相机意图无法在URI上写入图像。我需要uri以电子邮件发送图像视频。 错误日志
我正试着拍一张照片并把它保存到一个自定义的位置- onActivityResult()中的数据为空。我错过了什么?
我正在尝试使用不同的应用程序附加图像,代码如下: 附加的图像是使用以下代码生成的: 但当我试图打开GMAIL与此意图,只有文本显示应用程序与错误:. 我错过了什么? 编辑 这是另一个解决方案:android。操作系统。FileUrieExposedException:文件。jpg通过ClipData曝光了app之外的内容。项目getUri()
我的android Vitals中有一些ANR: 意图广播{act=Android.Intent.Action.Screen_On flg=0x50200010(有附加内容)}或 广播意图{act=Android.Intent.Action.Screen_On flg=0x50000010}。 我也有一些ANR: 意图广播{act=Android.Intent.Action.Screen_off
我正在使用FCM进行消息推送,我正在将数据从通知发送到我正在打开的活动。 建筑通知规范: 在我的活动中,我得到了如下意图: 但问题是,每次Intent Extras在活动中为空时,我都检查了我在社区中找到的所有可能的原因,但每次响应都是相同的。 我试过下面提到的链接 Intent的额外值始终为空 Android通知PendingIntent Extras null 总是从通知意图android获取
我有MainActivity上有一个片段,当用户点击片段时,用户会导航到另一个片段,在最后一个片段上有一个按钮来启动谷歌地图导航,这是代码: 问题是,在地图启动后,我希望用户在按下back时返回到我的应用程序,而不是Launcher。 有没有办法做到这一点。 这是我的完整代码: 主体活动 原木