zhlO_O
zhlO_O
采纳率100%
2018-04-24 13:04

Android想要写一个延迟方法在其他地方调用!!希望各位大神老师帮忙解答!!

5
已采纳

作为一个初学Android 的萌新想要写一个方法 类似于

public void delay(int ms){。。。。。。}
在其他地方用 delay(1000);调用
希望各位大神老师帮忙解答!!

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

5条回答

  • yingz_andy yingz_andy 3年前

    public void delay(int ms){
    new Handler().postDelayed(()->pull(),ms*1000);

    public void pullActivity(){.........}

    这是最简单的了

    点赞 评论 复制链接分享
  • weixin_40951087 LanFladimir 3年前

    view.postDealy(runnable->view.setVisiblity(Gone),time)
    大概这样吧

    点赞 评论 复制链接分享
  • zhlO_O zhlO_O 3年前

    其实我是想让一个控件显示几秒种后消失,图片说明

    用delay(3000);代替我上面注释的代码 。因为为我Level1,Level2,3,4,5,6....都用到了这个延迟所以我想写一个方法来调用。

    我的Level1,Level2,3,4,5,6...都是继承了LevelTop的, LevelTop extends Activity。

    我用了前几个好心人提供的方法好像都不行,当然可能是我没看懂。希望有大神能帮帮忙!!!

    点赞 评论 复制链接分享
  • u013252213 深圳-阿蒙 3年前

    图片说明

    点赞 评论 复制链接分享
  • qq3965470 peak wang 3年前

    在其他地方调用可能会存在线程问题,建议写成回调
    interface MyInterface{
    run();
    }

    //如果在UI线程中使用,第二个参数可设置为空,如果在子线程中使用,通过实现接口重写run()方法实现。
    public void delay(int ms, Interface xxx)
    {
    new Timer().schedule(new TimerTask(){
    public void run() {

    if(null != xxx)
    {
    xxx.run();
    }else
    {
    //xxxx
    }
    }

    },)
    }

    点赞 评论 复制链接分享