我正在使用以下代码在Flutter应用程序中拾取图像,该应用程序已成功运行。 如果万一我不想上传图像并想删除选择的图像,我该怎么办?
public class MainActivity3 extends AppCompatActivity {
ActivityMain3Binding binding;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
binding = ActivityMain3Binding.inflate(getLayoutInflater());
binding=DataBindingUtil // don't found
View view = binding.getRoot();
setContentView(view);
binding.EdName.setText("test text");
}
显示图像的代码
Future getImage() async {
print("get image");
PickedFile image = await _picker.getImage(source: ImageSource.gallery);
if (image != null) {
setState(() {
final File file = File(image.path);
avatarImageFile = file;
isLoading1 = true;
});
}
}
现在我只是在拾取图像并尝试删除拾取的图像,我的意思是它应该为null,在上下文的稍后阶段上传图像
答案 0 :(得分:3)
您可以像这样在IconButton中使用setState将其再次设置为null:
IconButton(
icon: Icon(Icons.clear),
onPressed: () {
setState(() {
avatarImageFile = null;
});
},
),
答案 1 :(得分:0)
当您点击图像时,用墨水池将其包裹起来,图像选择器会重新打开并可以覆盖其他图像
Inkwell(
onTap: (){
getImage()}
Image.file(
avatarImageFile,
width: 90.0,
height: 90.0,
fit: BoxFit.cover,
),