我如何在5秒钟内运行代码,然后跳转到Android studio Java中的其他代码?
我需要尝试这些代码,当运行此代码5秒后,然后将跳转到另一个函数。我怎么能组合,是用线吗我如何在5秒钟内运行代码,然后跳转到Android studio Java中的其他代码?,java,android,opencv,thread-sleep,Java,Android,Opencv,Thread Sleep,我需要尝试这些代码,当运行此代码5秒后,然后将跳转到另一个函数。我怎么能组合,是用线吗 private Mat get_template(CascadeClassifier clasificator, Rect area,int size){ Mat template = new Mat(); Mat mROI = mGray.submat(area); MatOfRect eyes = new MatOfRect(); Point iris = new Poi
private Mat get_template(CascadeClassifier clasificator, Rect area,int size){
Mat template = new Mat();
Mat mROI = mGray.submat(area);
MatOfRect eyes = new MatOfRect();
Point iris = new Point();
Rect eye_template = new Rect();
clasificator.detectMultiScale(mROI, eyes, 1.15, 2,Objdetect.CASCADE_FIND_BIGGEST_OBJECT|Objdetect.CASCADE_SCALE_IMAGE, new Size(30,30),new Size());
Rect[] eyesArray = eyes.toArray();
for (int i = 0; i < eyesArray.length; i++){
Rect e = eyesArray[i];
e.x = area.x + e.x;
e.y = area.y + e.y;
Rect eye_only_rectangle = new Rect((int)e.tl().x,(int)( e.tl().y + e.height*0.4),(int)e.width,(int)(e.height*0.6));
// reduce ROI
mROI = mGray.submat(eye_only_rectangle);
Mat vyrez = mRgba.submat(eye_only_rectangle);
// find the darkness point
Core.MinMaxLocResult mmG = Core.minMaxLoc(mROI);
// draw point to visualise pupil
Core.circle(vyrez, mmG.minLoc,2, new Scalar(255, 255, 255, 255),2);
iris.x = mmG.minLoc.x + eye_only_rectangle.x;
iris.y = mmG.minLoc.y + eye_only_rectangle.y;
eye_template = new Rect((int)iris.x-size/2,(int)iris.y-size/2 ,size,size);
Core.rectangle(mRgba,eye_template.tl(),eye_template.br(),new Scalar(255, 0, 0, 255), 2);
// copy area to template
template = (mGray.submat(eye_template)).clone();
return template;
}
return template;
}
我应该如何组合?实际上,代码的一部分是检测眼睛,现在我想做的是在5秒钟后检测眼睛,然后跳转到另一个函数代码
我可以把什么代码与它们结合起来?如果你有任何想法,需要帮助回答
谢谢
final Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
// Stop 1st one
// run 2nd
}
}, 5000);
final Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
// Stop 1st one
// run 2nd
}
}, 5000);
我可以使用上面的代码将其放入public void run()?我现在正在尝试是的,它是一个处理程序,等待5秒执行它的主体,我评论说你可以将它添加到一个方法中显示红色单词和postDelayed的“Looper”是无效的方法声明,我该怎么办?我需要先创建类或创建库?为什么我尝试添加上面的代码,但失败了…我的代码出现了红色的单词将其添加到方法中?这只是一条线,不是一种方法,或者你可能犯了一个主要的错误。。如果你想不出来,发布一张图片,我可以使用上面的代码将其放入public void run()?我现在正在尝试是的,它是一个处理程序,等待5秒执行它的主体,我评论说你可以将它添加到一个方法中显示红色单词和postDelayed的“Looper”是无效的方法声明,我该怎么办?我需要先创建类或创建库?为什么我尝试添加上面的代码,但失败了…我的代码出现了红色的单词将其添加到方法中?这只是一条线,不是一种方法,或者你可能犯了一个主要的错误。。如果你想不出来,就贴一张图片