- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用第一个答案 here尝试启动重复任务,更新搜索栏(“timeSlider”)以在音频文件播放时显示进度。重复函数是updateTimeSlider()
。当通过 postDelayed
启动时,updateTimeSlider
会给出“无法解析符号”错误(请参阅本文底部的图片)。 updateTimeSlider()
在单独一行时不会给出该错误(也如图所示)。
(请注意,该行中的 updateTimeSlider()
本身并不是代码真正的运行方式。它只是为了演示它在该位置上的工作原理。)
任何人都可以帮助我了解如何纠正 postDelayed
行中的问题吗?
有几个人建议我只是忘了在 doUpdateTimeSlider
中编写 do
。我没忘。我想执行 updateTimeSlider
(没有 do
),它确实执行得很好,并且不会在 postDelayed
之外产生错误。 updateTimeSlider
是一个通过 JNI(Java native 接口(interface))使用的 C++ 函数,使用此 Java 文件底部的语句,如下所示:
private native void updateTimeSlider();
JNI 方面工作正常,updateTimeSlider()
是我尝试执行的方法,而不是 doUpdateTimeSlider
。
顺便说一句,我确实尝试将 doUpdateTimeSlider
放在那里,它也会导致错误:变量 doUpdateTimeSlider 可能尚未初始化
。
我也不知道如果我可以执行 doUpdateTimeSlider
会对我有什么好处,因为其中没有代码来实际更新 timeSlider
搜索栏。
public class PlayActivity extends AppCompatActivity {
private static final String TAG = "PlayActivity";
boolean playing = false;
private int timeSliderInterval = 1000; // 1 second
private Handler timeSliderHandler;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_play);
final Runnable doUpdateTimeSlider = new Runnable() {
@Override
public void run() {
timeSliderHandler.postDelayed(updateTimeSlider, timeSliderInterval);
updateTimeSlider();
}
};
最佳答案
您可以替换:
timeSliderHandler.postDelayed(updateTimeSlider, timeSliderInterval);
与:
timeSliderHandler.postDelayed(doUpdateTimeSlider, timeSliderInterval);
您忘记在 doUpdateTimeSlider
中写入 do
。
关于java - 安卓 Java : "Cannot resolve" in postDelayed,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41414330/
我正在尝试为一个应用程序循环播放一个简短的动画,我在许多网站和论坛中找到了这个解决方案或其中的几个。然而,首席开发人员告诉我这段代码最终会使应用程序崩溃,我应该改用线程。谁能详细解释一下为什么这段代码
根据Handler.postDelayed(Runnable r, long delayMillis)的文档: Causes the Runnable r to be added to the mes
我试图实现一个循环Runnable。我发现的示例似乎使用以下想法来启动可运行的。 handler = new Handler(); final Runnable r =
对于这种使用“handler.posDelayed”的类型,我没有看到真正的答案。 因此,我使用 for 循环多次执行“handler.posDelayed”。问题是,当我离开 Activity 并重
我遇到错误:无法解析符号“postDelayed”。在: handler.postDelayed(updateCurrentTime, 500); 这是我的一些代码: package com.exam
我有一个情况,我创建了一个按钮和一个像这样的函数。 ... public void BtnOnClick(View view) { displayMsg(); } ... private vo
如何将用户字符串拉入处理程序timer.postDelayed? public class Quotes extends Activity implements OnClickListener {
我需要的是当 competition.isTimerStarted 变成 false 这个 runnable 应该启动 buttonsProcedure() 一次然后自己停止但这并没有发生 - but
谁能看出这不起作用的任何原因? override fun resetAnimations() { Log.d("MainActivity", "start") Handler().p
我正在查看 postDelayed 的 Android 文档 post delayed documentation 这类似于另一个问题 - https://stackoverflow.com/ques
我正在尝试在一段时间后自行重启服务。我的代码看起来像这样(在 onStartCommand(...) 内) Looper.prepare(); Handler handler = new Handle
我正在尝试为我的应用制作启动画面。我使用了 postDelayed 方法。这是我的代码: public class SplashScreenActivity extends Activity {
我正在使用 handler.postDelayed 方法为某些动画内容创建一些延迟。 我正在使用 Mediaplayer 播放一些歌曲。用户可以通过单击下一步退出此操作类。但是在下一个屏幕上,即使我在
我正在使用此代码播放声音 final MediaPlayer mp = MediaPlayer.create(this, R.raw.sound); mp.setOnComp
我正在尝试更改 handler.postDelay() 中处理程序的延迟,但在这里它只工作一次然后停止。关键的方法在最后。我在想如何使可运行程序在 postDelay() 循环中工作。 class M
我有一个简单的秒表代码 fragment 。线程在自定义类中运行,它通过接口(interface)连接到主 Activity public class MainActivity extends App
在我的应用程序中,我使用具有多个可运行对象的处理程序。为了调用这些可运行对象,我循环 postDelayed,以便它们充当计时器。我意识到随着时间的推移,这会生成一个巨大的堆(10mb,并且还在不断增
我有一个监听蓝牙串行数据的线程。 我有一个将数据传递到 ui 线程的方法,名为:sendData(byte[] buffer),它将数据完美地发送到 UI 线程,这可能会导致它在以下情况下变得非常慢:
这是我的代码,但理论上它应该每秒发布此日志消息直到永远,但事实并非如此。有任何想法吗?我的目标是让它永远运行,但 while 循环也不起作用。 import android.app.Activity;
我想为 WebView 动态设置自动滚动速度。在 onCreate 中调用 autoScroll(25) 并将其删除,接下来调用 autoScroll(300) 但是当 apk 运行时自动滚动速度为
我是一名优秀的程序员,十分优秀!