最近要作一个需求:在activity上始终保留一个小尾巴,即上下两层的原理。 实现这个要么1.悬浮框(windowManager 系统级的)会屏蔽好多东西(返回键,dialog)等。2.popuwindow,通常只是在事件触发才弹出,初始化的时候报错。3.放在frameLayout上 叠加 。spa
刚开始作的时候走了好多的弯路。先是在frameLayout上叠加后来总体滑动的时候卡,后来改为了悬浮框,可是发现屏蔽了好多东西。 最后又改为了popuWindow .初始化时报错后来查了资料在onStart()里启动一个线程定时器 用handler 接收:代码以下 : 开始:线程
private Handler mHandler = new Handler(){ public void handleMessage(Message msg) { switch (msg.what) {事件
case 13: showTail(); break; } }; }; 在onStt里:protected void onStart() { Timer timer = new Timer(); if(null == popuWindow ){ timer.schedule(new initPopupWindow(), 200);it
}class
super.onStart();原理
}定时器
public class initPopupWindow extends TimerTask{ public void run() { Message message = new Message();im
message.what = 13;activity
mHandler.sendMessage(message); } di
}
放在onStart里是须要判断一下 ,按返回键是又初始化一次,会报不能在加一个parent的错误,因此须要一个判断
这个定时器的时间很特别 100 时个人总是报错