gpt4 book ai didi

java - Runnable 根本不在 fragment 内运行

转载 作者:行者123 更新时间:2023-12-01 17:16:17 25 4
gpt4 key购买 nike

我正在尝试将 SeekBar 连接到 fragment 中的 MediaPlayer,但可运行程序根本没有运行。我在其中放入了一个 log.i 以查看它是否运行,但什么也没发生。

我将 Handler 声明为全局变量:

Handler seekHandler;
SeekBar sBar;

然后在onCreateView中:

seekHandler = new Handler();
sBar = (SeekBar) v.findViewById(R.id.seekBar1);

可运行:

Runnable run = new Runnable() {

@Override
public void run() {
sBar.setMax(mp.getDuration());
sBar.setProgress(mp.getCurrentPosition());
Log.i("TAG", "I'm running");
seekHandler.postDelayed(this, 25);
}
};

mp 变量是一个 MediaPlayer。问题是 Runnable 甚至不执行一次。我在 activity 的类似应用程序中使用完全相同相同的代码,并且工作完全正常。这是因为可运行对象在 fragment 中的行为不同吗?另外,我还将 TabLayout 与 ViewPager 和 2 Fragments 一起使用,如果这会影响其中任何一个。

最佳答案

在处理程序再次提交之前,您必须至少运行一次。

在您的类(class)中,您应该至少调用一次 seekHandler.post(run)run.run();

关于java - Runnable 根本不在 fragment 内运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21929529/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com