在 android 上的 java 中实现此方法 onclick 时遇到问题。我学校的导师也对此感到迷茫。这目前运行没有错误,除了点击没有实现的事实changeImage()
您是否看到此代码有任何问题?任何帮助将不胜感激!
public class MyRenderer extends RajawaliCardboardRenderer implements OnClickListener {
public MyRenderer(Context context) {
super(context);
}
public void initScene() {
Log.d("debug1","initScene()");
Sphere sphere = createPhotoSphereWithTexture(new Texture("photo",R.drawable.panorama));
getCurrentScene().addChild(sphere);
getCurrentCamera().setPosition(Vector3.ZERO);
getCurrentCamera().setFieldOfView(75);
}
private static Sphere createPhotoSphereWithTexture(ATexture texture) {
Material material = new Material();
material.setColor(0);
try {
material.addTexture(texture);
} catch (ATexture.TextureException e) {
throw new RuntimeException(e);
}
Sphere sphere = new Sphere(50, 64, 32);
sphere.setScaleX(-1);
sphere.setMaterial(material);
return sphere;
}
public void changeImage() {
Log.d("debug1", "" + getCurrentScene().getNumChildren());
ArrayList<Object3D> objectList = getCurrentScene().getChildrenCopy();
Material material = objectList.get(0).getMaterial();
for (ATexture texture : material.getTextureList())
{
material.removeTexture(texture);
texture = null;
}
Texture t = new Texture("sphereTexture",R.drawable.newimage);
t.shouldRecycle(true);
try {
material.addTexture(t);
}
catch (Exception e){e.printStackTrace();}
};
public void onClick(View v) {
changeImage();
}
};
更改图像声明
public abstract class RajawaliCardboardRenderer extends RajawaliRenderer implements CardboardView.StereoRenderer {
//...
public void changeImage() {};
//...
}