如何去除抖动中的图像?

时间:2020-07-15 11:36:37

标签: flutter imagepicker flutter-image

我正在使用以下代码在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,在上下文的稍后阶段上传图像

2 个答案:

答案 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,
   ),