Android小知识7
16lz
2021-01-23
1、设置Activity为Dialog类型或者透明
只需设置下Activity的style即可。
Dialog形式:
android:theme="@android:style/Theme.Dialog"半透明的:
android:theme="@android:style/Theme.Translucent"
2、LinearLayout小知识
当LinearLayout的方向为vertical时,其layout_gravity属性设置为横向才有效。比如:left,right,center_horizontal等。
当LinearLayout的方向为horizontal时,其layout_gravity属性设置为横向才有效。比如:top,bottom,center_vertical等。
3、TranslateAnimation
1)TranslateAnimation移动后,会回到原位置。解决此问题,只需设置:
anim.setFillAfter(true);
2)位置移动后,触摸事件的响应还停留在原控件的位置。解决此问题,需要在动画完成后移动控件的位置:
anim.setAnimationListener(new AnimationListener() {@Overridepublic void onAnimationStart(Animation animation) {}@Overridepublic void onAnimationRepeat(Animation animation) {}@Overridepublic void onAnimationEnd(Animation animation) {try {viewTop.clearAnimation();RelativeLayout.LayoutParams params = new android.widget.RelativeLayout.LayoutParams(viewTop.getLayoutParams());params.setMargins(0, 0, 0, viewTop.getHeight());viewTop.setLayoutParams(params);} catch (Exception e) {e.printStackTrace();}}});注意:要移动的布局必须是一个RelativeLayout,我尝试用LinearLayout时报错~
如果只移动布局而anim.setFillAfter(false);则会出现闪屏,因为动画结束,该布局回复到原位置,然后才会执行移动操作~
5、防止系统屏幕截图
this.getWindow().addFlags(WindowManager.LayoutParams.FLAG_SECURE);
更多相关文章
- 后台动态添加布局文件、控件与动态设置属性
- Android 百分比布局
- Android 获取地理位置的经度和纬度
- Android 在xml布局配置文件中给Button按钮添加事件
- Android 安装位置 - installLocation简析