[置顶] Android —— 代码大全
2016-08-29 16:50
288 查看
一、theme设置夜间模式
1.使用几个常量标识
使用view的SYSTEM_UI_FLAG_LOW_PROFILE和SYSTEM_UI_FLAG_VISIBLE常量进行动态设置。实例:
btn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Toast.makeText(getApplicationContext(), "toast", Toast.LENGTH_LONG).show(); int currentVis = v.getSystemUiVisibility(); int newVis; if ((currentVis & View.SYSTEM_UI_FLAG_LOW_PROFILE) == View.SYSTEM_UI_FLAG_LOW_PROFILE) { newVis = View.SYSTEM_UI_FLAG_VISIBLE; } else { newVis = View.SYSTEM_UI_FLAG_LOW_PROFILE; } v.setSystemUiVisibility(newVis); } });
注:实践时并没有达到想要的效果,也继承的是AppCompatActivity,但是点击并没有“夜间模式”,哪位大神知道为什么请留言呀!
2.这里介绍一下Android 夜间模式切换,颜色渐变效果实现
大神博客总结:
如果在setContentView()方法之前调用是可以改变主题的,因为布局还没生成。
二 、动态创建视图
注:对于 LinearLayout :当 android:orientation=”vertical” 时, 只有水平方向的设置才起作用,垂直方向的设置不起作用。即:left,right,center_horizontal 是生效的。
当 android:orientation=”horizontal” 时, 只有垂直方向的设置才起作用,水平方向的设置不起作用。即:top,bottom,center_vertical 是生效的。
可以对父布局的gravity属性进行设置。
三、动画视图
参考:Android之属性动画、值动画ValueAnimator的AnimationUpdateListener:
动画的getAnimatedFraction()方法会返回当前动画完成的百分比。(ObjectAnimator是ValueAnimator的子类)// 1. 在回调中手动更新View对应属性: AnimatorUpdateListener l = new AnimatorUpdateListener() { public void onAnimationUpdate(ValueAnimator animation) { // 当前的分度值范围为0.0f->1.0f // 分度值是动画执行的百分比。区别于AnimatedValue。 float fraction = animation.getAnimatedFraction(); // 以下的的效果为 View从完全透明到不透明, view.setAlpha(fraction); // Y方向向下移动300px的距离. view.setTranslationY(fraction * 300.0f); } }; ValueAnimator mAnim = ValueAnimator.ofFloat(0f, 1.0f); mAnim.addUpdateListener(l); mAnim.setDuration(1000); mAnim.start();
各个动画类作用,以及其之间的关系:
同类技术对比:
1 补间动画(Tween Animation):
1)渐变动画支持四种类型:平移(Translate)、旋转(Rotate)、缩放(Scale)、不透明度(Alpha)。
2)只是显示的位置变动,View的实际位置未改变,表现为View移动到其他地方,点击事件仍在原处才能响应。
2 帧动画(Frame Animation):
1)用于生成连续的Gif效果图。
2)DrawableAnimation也是指此动画。
3属性动画(Property Animation):-执行类(ObjectAnimator)
1)支持对所有View能更新的属性的动画(需要属性的setXxx()和getXxx())。
2)更改的是View实际的属性,所以不会影响其在动画执行后所在位置的正常使用。
3)Android3.0 (API11)及以后出现的功能,3.0之前的版本可使用github第三方开源库nineoldandroids.jar进行支持。
相关文章推荐
- Android系统手机隐藏代码大全
- Android权限大全代码
- Android对话框dialog大全(代码直接可用)
- Android实用代码大全
- [置顶] Android在代码中打开Wifi、移动网络和GPS
- Android编译大全(三)--编译之后的代码结构及SDK制作
- Android颜色代码大全
- 最无私的Android资料(书籍+代码)分享-不要积分(求置顶)
- Android代码命名规范大全
- Android权限大全代码
- Android权限大全代码
- android sqlite SQLiteDatabase 操作大全 不看后悔!必收藏!看后精通SQLITE (第三部分,完整代码)
- [置顶] Android项目组织和代码重用
- [置顶] Android自定义控件大全
- Android权限大全代码
- Android 编程实用代码大全
- Android权限代码大全
- android代码大全之(二):获取屏幕大小
- [置顶] Android 代码混淆 选项说明
- 各种颜色代码大全(Html、android)