gpt4 book ai didi

java - 如何让 Android TextToSpeech 从 ListView 读取

转载 作者:行者123 更新时间:2023-11-30 02:10:46 25 4
gpt4 key购买 nike

我有一个 ListView,它通过 CursorLoader 从 ContentProvider 中提取数据。

我想要一个按钮,在按下时读出 ListView 中的数据。棘手的部分是 ListView 中的数据不断更新(来自 ContentProvider 的数据每隔几秒定期更改一次)并且每行的数据可能会在读取音频时更新。

如何做到每次更新都读取最新的数据?

最佳答案

试试下面的代码:

private boolean ttsEnabled= true;
private Thread ttsThread = null;
private ListView lastState = null;

public void enableTTS() {
ttsEnabled = true;
ttsThread = new Thread(ttsRunnable);
ttsThread.start();
}

public void disableTTS() {
ttsEnabled = false;
try {
ttsThread.join();
} catch (InterruptedException e) {
e.printStackTrace();
}
}

private Runnable ttsRunnable = new Runnable() {
@Override
public void run() {
while (ttsEnabled) {
if (lastState == null || !lastState.equals(yourListView)) {
// List view updated, tts here
lastState = yourListView;
}
}
}
};

关于java - 如何让 Android TextToSpeech 从 ListView 读取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30131203/

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