Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/380.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/228.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用加速度计数据触发gif动画_Java_Android - Fatal编程技术网

Java 使用加速度计数据触发gif动画

Java 使用加速度计数据触发gif动画,java,android,Java,Android,我试图使用库来显示我在主要活动的if和else条件下制作的gif动画,但使用库时遇到问题。我认为这可能是Android Studio的问题,但我一直无法在这行代码中解决symbol gifImageView(对于第二个gifImageView,现在使用stars) 这是我剩下的代码 package-shake.shake; /** *2016年3月24日通过墨迹创建。 */ 导入android.app.Activity; 导入android.content.Context; 导入android.

我试图使用库来显示我在主要活动的if和else条件下制作的gif动画,但使用库时遇到问题。我认为这可能是Android Studio的问题,但我一直无法在这行代码中解决symbol gifImageView(对于第二个gifImageView,现在使用stars)

这是我剩下的代码

package-shake.shake;
/**
*2016年3月24日通过墨迹创建。
*/
导入android.app.Activity;
导入android.content.Context;
导入android.hardware.Sensor;
导入android.hardware.SensorEvent;
导入android.hardware.SensorEventListener;
导入android.hardware.SensorManager;
导入android.os.Bundle;
导入android.view.view;
导入android.widget.ImageView;
导入android.widget.TextView;
导入android.content.Intent;
导入android.graphics.Bitmap;
导入android.os.Bundle;
导入android.support.v7.app.AppActivity;
导入android.util.Log;
导入android.view.Menu;
导入android.view.MenuItem;
导入android.view.view;
导入com.felipecsl.gifimageview.library.gifimageview;
公共类主扩展活动实现SensorEventListener{
私有GifImageView GifImageView;
私人浮动mLastX、mLastY、mLastZ、卡路里;
私有布尔最小化;
私人传感器管理器;
专用传感器mAccelerometer;
专用最终浮子噪声=(浮子)4.0;
;
/**
*在首次创建活动时调用。
*/
@凌驾
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
gifImageView=(gifImageView)findviewbyd(R.id.vertical);
最小化=错误;
msSensorManager=(SensorManager)getSystemService(Context.SENSOR\u服务);
mAccelerometer=msSensorManager.getDefaultSensor(传感器类型\加速计);
msSensorManager.registerListener(此、mAccelerometer、SensorManager.SENSOR\u延迟\u正常);
}
受保护的void onResume(){
super.onResume();
msSensorManager.registerListener(此、mAccelerometer、SensorManager.SENSOR\u延迟\u正常);
}
受保护的void onPause(){
super.onPause();
mSensorManager.unregisterListener(此);
}
@凌驾
精度更改时的公共无效(传感器,int精度){
//可以安全地忽略此演示
}
@凌驾
传感器更改时的公共无效(传感器事件){
TextView tvC=(TextView)findViewById(R.id.carries);
TextView tvX=(TextView)findViewById(R.id.x_轴);
TextView tvZ=(TextView)findViewById(R.id.z_轴);
ImageView iv=(ImageView)findViewById(R.id.image);
float x=事件值[0];
浮动y=事件值[1];
float z=事件值[2];
如果(!最小化){
mLastX=x;
mLastY=y;
mLastZ=z;
tvX.setText(“0.0”);
tvC.setText(“0.0”);
tvZ.setText(“0.0”);
最小化=真;
}否则{
浮动deltaX=Math.abs(mLastX-x);
float deltaY=Math.abs(mLastY-y);
float deltaZ=Math.abs(mLastZ-z);
如果(deltaX<噪音)deltaX=(浮动)0.0;
如果(deltaY<噪声)deltaY=(浮点)0.0;
如果(deltaZdeltaY){
gifImageView.startAnimation();
;
卡路里++;
}否则如果(deltaY>deltaX){
gifImageView.startAnimation();
卡路里++;
}否则{
gifImageView.stopAnimation();
}
}
}
}
}


请问,“第二次查看”是什么意思?第一个运行正常?如果不清楚,很抱歉,android studio一直告诉我它无法解析gifImageView=(gifImageView)findViewById(R.id.gifImageView)的符号;哦我现在明白了。谢谢你已经和stars签了名;)对不起。现在我想知道。。。如何配置xml以显示此图像视图?因为findViewById没有找到它。啊,可能就是这样,我在OPYou中添加了一个名为“垂直”的XML组件,但您的java正在搜索一个名为“gifImageView”的组件。。。。然后使用此
android:id=“@+id/gifImageView”
而不是此
android:id=“@+id/vertical”
或更改
(gifImageView)findViewById(R.id.gifImageView)到该
(GifImageView)findViewById(R.id.vertical)在java代码上。你可以选择:D
    gifImageView = (GifImageView) findViewById(R.id.*gifImageView*);