Как стереть текущее растровое изображение из ImageView

У меня есть метод, который рисует растровое изображение, а затем накладывает его на предварительный просмотр камеры. Этот метод перерисовывает изображение по мере изменения размера экрана, чтобы обеспечить правильное расположение наложения. Моя проблема заключается в том, что я не могу удалить предыдущее растровое изображение из ImageView, а последующие растровые изображения просто добавляются поверх предыдущих. Я отладил, чтобы гарантировать, что растровые изображения, которые рисуются, не содержат предыдущих растровых изображений, поэтому кажется, что один из них просто укладывается поверх других. Что я делаю не так? Спасибо.

    void ViewSizeChangeWatcherSizeChanged(object sender, ViewSizeChangeMonitor.SizeChangedEventArgs e)
    {
        HintImageView.SetImageBitmap(null); // does not work
        HintImageView.SetImageDrawable(null); // does not work
        HintImageView.SetImageResource(0); // does not work 
        HintImageView.SetImageResource(Android.Resource.Color.Transparent); // does not work

        var bitmap = Utility.DrawHintForFaceFront(Math.Min(e.Width, e.Height), Color.ParseColor("#64FFFFFF"), Resources.DisplayMetrics.Density);
        HintImageView.SetImageBitmap(bitmap);
        HintImageView.BringToFront();
    }

1 ответ

  1. вызов HintImageView.SetImageDrawable(null);onStop() &

    var bitmap = Utility.DrawHintForFaceFront(Math.Min(e.Width, e.Height), Color.ParseColor("#64FFFFFF"), Resources.DisplayMetrics.Density);
            HintImageView.SetImageBitmap(bitmap);
            HintImageView.BringToFront();
    

    вызовите эту часть кода в onStart()