视频启动后,SetText赞扬无法正常工作



好吧,我正在计划一个界面,例如视频播放背景,其中一些文字出现在其中。我正在使用视频评论和普通文字和普通按钮。像Spotify应用程序的介绍。

所以我创建了2种方法用于视频打开

 public void video_ac(String x){
    adres = null;
    adres = Uri.parse("android.resource://" + getPackageName()
            + "/"
            + "raw/" +x);
    videoView.setVideoURI(adres);
    videoView.start();
}

set text

public void yazdir (String a, String b, String c)
{
    ly.setVisibility(View.VISIBLE);
    icerik_yazisi.setText("");
    icerik_yazisi.setCharacterDelay(150);
    icerik_yazisi.animateText(a);
    BT_olumlu.setText(b);
    BT_olumsuz.setText(c);
}

此代码在创建方法上完美工作,但是在按钮单击"侦听器"之后它不起作用。

      BT_olumlu.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            sorgula2(BT_olumlu.getText().toString());
            ly.setVisibility(View.GONE);
        }
    })

和我的方法:

public void sorgula2 (String sss){
    if (sss.equals("oyuna başla")){
        video_ac("abc");
        yazdir("yoldan geçen kamyonetn rengi hangisidir ..", "mavi tır " ,"sarı kamyonet");
    }
    else if(sss.equals("sarı kamyonet")){
        video_ac("bca");
        videoView.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
            @Override
            public void onCompletion(MediaPlayer mediaPlayer) {
                yazdir(".. olay nerede gerçekleşmiş.", "otopark" ,"havalimanı");
            }
        });
    }

问题是显示了视频以无限循环的形式出现,而不是停止,而setText方法在第一次条件下永远无法使用,我只能在视频中显示文本完整的方法。(第二条件)

已解决,将来可能是对某人有用的,问题是听众。我改变了它并解决了。

BT_olumlu.setOnTouchListener(new View.OnTouchListener() {
        @Override
        public boolean onTouch(View v, MotionEvent event) {
            switch(event.getAction()) {
                case MotionEvent.ACTION_DOWN:
                    // PRESSED
                    return true; // if you want to handle the touch event
                case MotionEvent.ACTION_UP:
                    // RELEASED
                    icerik_yazisi.setVisibility(View.INVISIBLE);
                    sorgula2(BT_olumlu.getText().toString());
                    return true; // if you want to handle the touch event
            }
            return false;
        }
    });

最新更新