textView在audio.mp3播放时突出显示



我在textView中具有外行。和一个播放音频文件的按钮。但是我想知道,当我们单击播放按钮时,我们如何突出显示文本视图单词。

MediaPlayer Play;

textview textview4;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_third_kalma);
    Button button = (Button) findViewById(R.id.btn4);
    if (play.isPlaying()) {
        textView4.setTextColor(ContextCompat.getColor(this, R.color.black));
    }
    button.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent p = new Intent(Third.this,ThirdT.class);
            startActivity(p);
        }
    });
    play = MediaPlayer.create(this , R.raw.audio3);
    Button bone = (Button) findViewById(R.id.btnSec);
    bone.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

            play.start();
        }});}

尝试此代码,它将有用:尝试将此代码保存在计时器或调度程序中:

MediaPlayer mediaPlayer;
mediaPlayer = MediaPlayer.create(this, R.raw.sound);
if (mediaPlayer.isPlaying()){
mTextView.setTextColor(Color.parseColor("#Your own color code(#ff0000)")); 
}

,也可以尝试以下方法:

final Button play= (Button) findViewById(R.id.button_id);
        play.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                mTextView.setTextColor(Color.parseColor("your color code"));
            }
        });

或者您可以尝试以下方式尝试调度程序:

ScheduledThreadPoolExecutor scheduler =
                (ScheduledThreadPoolExecutor) Executors.newScheduledThreadPool(5);
        scheduler.scheduleAtFixedRate(new Runnable() {
            @Override
            public void run() {
                if (mediaPlayer.isPlaying()){
                    mTextView.setTextColor(Color.parseColor("#Your own color code(#ff0000)")); 
                    }
                    }
        }, 0, 2, TimeUnit.SECONDS);

最新更新