我有以下代码:
package com.example.top_tech_deals;
import android.app.Activity;
import android.content.Intent;
import android.media.MediaPlayer;
import android.net.Uri;
import android.os.Bundle;
import android.view.MotionEvent;
import android.widget.VideoView;
public class Splash extends Activity{
@Override
protected void onCreate(Bundle TravisLoveBacon) {
// TODO Auto-generated method stub
super.onCreate(TravisLoveBacon);
setContentView(R.layout.splash);
VideoView vv = (VideoView)this.findViewById(R.id.videoView);
String fileName = "android.resource://" + getPackageName() + "/" + R.raw.splashvid2;
vv.setVideoURI(Uri.parse(fileName));
vv.start();
Thread timer = new Thread(){
public void run(){
try{
sleep(12000);
} catch(InterruptedException e){
e.printStackTrace();
} finally{
Intent openStartingPoint = new Intent ("android.intent.action.MENU");
startActivity(openStartingPoint);
}
}
};
timer.start();
}
//Function that will handle the touch
@Override
public boolean onTouchEvent(MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_DOWN) {
synchronized(timer){
splashTread.notifyAll();
}
}
return true;
}
}
通过使用 Bucky 的教程之一,我设法创建了上述代码,该代码用于创建 12 秒的初始屏幕。我还对其进行了修改,以便播放视频。我遇到的主要问题是代码的最后一点,即我在网上找到的 OnTouchEvent。它应该做的是让用户只需点击屏幕即可跳过启动屏幕,这应该将用户带到 MENU 文件。
错误似乎在这一行:
synchronized(timer){
上面写着“错误计时器无法解析为变量”
为什么会发生这种情况,我该如何解决?谢谢您的帮助。