Java 安卓系统:在有';在ImageView中没有图像
我创建了一个应用程序,需要用户抓拍一张照片并将其保存到MySQL数据库。该活动有3个按钮,分别是“照相机”、“保存”和“下一步”。当前,如果ImageView中没有照片,用户单击“下一步”按钮仍可以转到下一个活动 现在,我要如何确保如果ImageView中没有图像,用户无法转到下一个活动。下面是我的代码:Java 安卓系统:在有';在ImageView中没有图像,java,android,sharedpreferences,Java,Android,Sharedpreferences,我创建了一个应用程序,需要用户抓拍一张照片并将其保存到MySQL数据库。该活动有3个按钮,分别是“照相机”、“保存”和“下一步”。当前,如果ImageView中没有照片,用户单击“下一步”按钮仍可以转到下一个活动 现在,我要如何确保如果ImageView中没有图像,用户无法转到下一个活动。下面是我的代码: btnNext.setOnClickListener(new View.OnClickListener() { @Override public voi
btnNext.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(taskClass.getPhoto_before() != null){
Intent intent = new Intent(TaskUpdateBefore.this, TaskUpdateAfter.class);
intent.putExtra("task", taskClass);
startActivity(intent);
}else{
Toast toast = Toast.makeText(TaskUpdateBefore.this,"Please snap a photo and save", Toast.LENGTH_LONG);
toast.setGravity(Gravity.CENTER, 0, 0);
toast.getView().setBackgroundColor(Color.TRANSPARENT);
TextView alert = toast.getView().findViewById(android.R.id.message);
alert.setTextColor(Color.rgb(213, 56, 23));
alert.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 25);
alert.setTypeface(null, Typeface.BOLD);
alert.setGravity(Gravity.CENTER);
toast.show();
}
}
});
有人知道问题出在哪里吗?如果默认情况下没有设置任何图像,您可以检查以下内容
if(imageView.getDrawable!=null){
Intent intent = new Intent(TaskUpdateBefore.this, TaskUpdateAfter.class);
intent.putExtra("task", taskClass);
startActivity(intent);
}
单击“下一步”按钮时,应调试并检查
taskClass.getPhoto\u before()
的值。在此之前,当数据库中的列图像格式不为NULL时,没有问题。但是当我把它改为NULL时,这个问题发生了。你试着调试吗?如何调试?我刚刚在logcatCheck上看到,本教程是您使用的Android Studio:。要添加断点,请单击要在运行应用程序时检查值的行的索引左侧栏(其中包含行号)。getDrawable为红色。嗯,你是说默认设置的背景是红色的?如果是这种情况,那么比较它,如果它不再是红色,而不是null。单词“gettrable()”我一直在引用imageView的公共方法,我不太明白你的意思,请参考这个,这可能会帮助你澄清你的疑问。