E/AndroidRuntime(1072): java.lang.IllegalArgumentException: Must use a native order direct Buffer
这是错误信息,问题是当我单独运行这个activity时没问题,但是当我把它合并到另一个工程中,并用intent触发时,就会报错。看网上的解答,改成1.5版本的就可以解决该问题,但是装到android 3.0上时,会显示放大。求解决方法。
这是错误信息,问题是当我单独运行这个activity时没问题,但是当我把它合并到另一个工程中,并用intent触发时,就会报错。看网上的解答,改成1.5版本的就可以解决该问题,但是装到android 3.0上时,会显示放大。求解决方法。
解决方案 »
- addContentView和setContentView的区别
- 导入Android SDK Samples中的项目时,项目报错无法运行,求原因?
- APK第一次运行时候弹出版权信息,点击后才能使用程序,版权内容变更时,提示用户!
- public 和 private 哪个更省内存,都可用的时候,用哪个?
- listview 遍历所有item的问题
- Android怎么做网络数据检索?
- android 自带的Market如何安装
- 为何inflate其他的View过来却无法占满父布局?
- Textview显示图片问题
- android NDK 单步调试问题
- android客户端无法连接到Openfire服务器
- 求URLEncoder和URLDecoder详解
你是用的FloatBuffer.wrap(float[])方法获得的Buffer的吧?换成下面这种方法应该就OK了,可以在1.5以后版本上用了~
private FloatBuffer vertexBuffer; // our vertexBuffer // Our vertices.
private float vertices[] = {
-1.0f, 1.0f, 0.0f, // 0, Top Left
-1.0f, -1.0f, 0.0f, // 1, Bottom Left
1.0f, -1.0f, 0.0f, // 2, Bottom Right
1.0f, 1.0f, 0.0f, // 3, Top Right
};// float数组转换成顶点vertexBuffer
ByteBuffer vbb = ByteBuffer.allocateDirect(vertices.length * 4);
vbb.order(ByteOrder.nativeOrder());
vertexBuffer = vbb.asFloatBuffer();
vertexBuffer.put(vertices);
vertexBuffer.position(0);