我想隐藏一个图像并传递给另一个类,但是没有这样做。
活动流程:从A到B然后C.将值和图像从C返回到B然后返回A.
接下来,A可以将数据传递给B进行编辑。
活动A (之前)
c.setOnClickListener(new View.OnClickListener() { pass to B
@Override
public void onClick(View view) {
if ((name != null && name.trim().length() > 0) && (result != null && result.trim().length() > 0)) {
Toast.makeText(getActivity().getApplicationContext(), "not null", Toast.LENGTH_LONG).show();
if (name.equals("Project")) {
Intent intent = new Intent(getActivity(), Project1.class);
Global.img = null;
v.setDrawingCacheEnabled(true);
v.measure(View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED),
View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED));
v.layout(0, 0, v.getMeasuredWidth(), v.getMeasuredHeight());
v.buildDrawingCache(true);
intent.putExtra("name", name);
intent.putExtra("result", result);
intent.putExtra("description", description);
intent.putExtra("k", k);
if (v.getDrawingCache() != null) {
Bitmap bitmap = Bitmap.createBitmap(v.getDrawingCache());
if (bitmap == null) {
Log.e("TAG", "getDrawingCache() == null");
}
Global.img = bitmap;
intent.putExtra("bitmap",true);
startActivityForResult(intent, 0);
}
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) { //receive from B
k = data.getIntExtra("k", 0);
Log.e("TAG",k+"");
if (k == 1) {
switch (requestCode) {
case 0:
result = data.getStringExtra("text");
name = data.getStringExtra("a");
description=data.getStringExtra("c");
if (Global.img != null) {
v.setImageBitmap(Global.img); // display image
}
as=Long.parseLong(result);
c.setText(" " + name + "------" + "RM " + result);
break;
}
上面的代码工作正常。但我想要实现的是我不想在活动A上显示图像(除了数量之外)。我希望只有当它转到B时才显示图像。
所以这是我到目前为止所尝试过的。我删除了
the imageView from `a.xml`
也删除
if (Global.img != null) {
v.setImageBitmap(Global.img);
}
在活动A onActivityResult 中运行应用。
11-13 16:07:15.916 29329-29329 / com.example.project.project E / AndroidRuntime:致命异常:主要 处理:com.example.project.project,PID:29329 显示java.lang.NullPointerException 在com.example.project.project.Claims $ 6.onClick(Claims.java:149) 在android.view.View.performClick(View.java:4654)
其中 Claims.java:149 指的是if (v.getDrawingCache() != null) {
答案 0 :(得分:0)
请在xml文件中恢复您的ImageView,并将此xml属性android:visibility="gone"
或android:visibility="invisible"
添加到您的ImageView
如何隐藏图片?使用xml属性:android:visibility="gone"
或android:visibility="invisible"