未更新Android ImageView

未更新Android ImageView,android,c++,bitmap,android-ndk,Android,C++,Bitmap,Android Ndk,我将位图传递给android ndk,将像素保留在我的类中,并根据用户的触摸,使用相应的(jni)c++调用更改像素。但是imageview没有被更新。当我在文件中写入位图时,我看到位图已更改。另外,当我点击主页按钮并返回应用程序时,我看到了变化。这种奇怪行为的原因是什么? 同样,三星Galaxy Note 10.1(安卓4.0.3)也存在这个问题,但Galaxy Tab 7.0运行良好 到目前为止,我所尝试的: 我试图使Imageview无效-无效 复制位图并重置Imageview的位图-工作

我将位图传递给android ndk,将像素保留在我的类中,并根据用户的触摸,使用相应的(jni)c++调用更改像素。但是imageview没有被更新。当我在文件中写入位图时,我看到位图已更改。另外,当我点击主页按钮并返回应用程序时,我看到了变化。这种奇怪行为的原因是什么? 同样,三星Galaxy Note 10.1(安卓4.0.3)也存在这个问题,但Galaxy Tab 7.0运行良好

到目前为止,我所尝试的:

  • 我试图使Imageview无效-无效
  • 复制位图并重置Imageview的位图-工作
  • 在单独的线程中调用C++方法不起作用。

  • 当你编写位图文件时,它是用C++部分操作的吗?如果是这样,java和NDK就不是完全同步的。那么,它可能会帮助你

    通过从UI线程调用
    imageView.invalidate()
    ,或从其他线程调用
    imageView.postInvalidate()
    ,尝试在位图更改后强制
    View
    重新绘制。我尝试了,但仍然保持保存效果。