Android 简单的动画效果有Animtion类提供 1.在XML中实现动画效果;2.在java代码中实现动画效果。
Android的animation由四种类型组成
XML中
alpha 渐变透明度动画效果
scale 渐变尺寸伸缩动画效果
translate 画面转换位置移动动画效果
rotate 画面转移旋转动画效果
Android 简单的动画效果有Animtion类提供 1.在XML中实现动画效果;2.在java代码中实现动画效果。
Android的animation由四种类型组成
XML中
alpha 渐变透明度动画效果
scale 渐变尺寸伸缩动画效果
translate 画面转换位置移动动画效果
rotate 画面转移旋转动画效果
以下属性以Dialog为例来讲解:
<item name="windowBackground"> 窗体的背景 </item>
<item name="windowFrame">Dialog 是否有边框 </item>
<item name="windowNoTitle">窗体是否有标题</item>
<item name="windowFullscreen">false</item>
是否为全屏<item name="windowOverscan">false</item>
是否要求窗体铺满整屏幕<item name="windowIsFloating">false</item>
窗体是否浮在下层之上<item name="windowContentOverlay">@null</item>
设置窗体内容背景<item name="windowShowWallpaper">false</item>
是否显示壁纸<item name="windowTitleStyle">@android :style/WindowTitle</item>
窗体的标题栏Style<item name="windowTitleSize">25dip</item>
窗体文字大小
我在想,handlerthread可以实现异步处理消息,还是批量的。多线程也是异步,处理批量消息。那么这两者的区别呢。
想了想,其实这两者的区别是很大的,多线程注重的并发,可以有多个线程,或者引入线程池进行管理。但是HandlerThread如果是new一个,那么它就是一个线程,一个线程处理多个消息。
还有一个区别,handlerthread的run方法里面是死循环,也就是除非手动调用quit方法线程是不会退出的,而多线程的线程有各自的处理方式,没有固定。
希望达到的效果:PopupWindow定时关闭,点击外部或返回键关闭且取消定时任务。
解决方案:
1.使用的是Handler的postDelayed方式实现定时任务——关闭PopupWindow
2.如果在定时任务执行之前,用户点击PopupWindow的外部或者back键关闭了弹出窗口,使用handler.removeCallbacks(r)
,从handler的消息队列中remove之前的runnable对象的回调