设置在Imageview上动态延迟的处理程序

问题描述

我正在像Whack和Molee一样创建游戏,并且在屏幕上的任意位置创建图像视图。

问题是,我在每两秒钟创建的变量中添加一个后延迟(变量是imageview),但是它仅作用于最后创建的imageview。发生这种情况是因为每两秒钟将var替换为新的imageview实例。

如何添加独立的后延迟或什么东西可以检测到2秒过去并删除该特定的imageview。

谢谢!

 mv = new ImageView(this);

 new Handler().postDelayed(new Runnable() {
            @Override
            public void run() {
                mv.setVisibility(View.GONE);
            }
        },2000);

我尝试了此操作,但只删除了最后一个图像视图。

解决方法

import renderer from '@vue/server-renderer';
import createApp from './main.js';

const {app,router,store} = createApp(context,true);

router.push(context.url);

router.isReady().then(() => {
    renderer.renderToString(app).then((html) => {

        var data = JSON.stringify({
            'resourceHints': '','styles': '','html': html,'state': store.state,'scripts': "",'preload': '',})

        console.log(data);
    });
});

通过使用方法内部的局部变量,根本不必每次都覆盖该值。 这样,mv实例在由处理程序执行的runnable中将是相同的。 (也不要每次都创建一个处理程序)

(您也可以在画布上绘制整个内容)