Android 5.0属性

时间:2022-01-31 07:06:40
//水波纹效果
//v 指定控件 x屏幕的 x轴 y轴 endRadio 起始位置 水波半径
Animator circularReveal = ViewAnimationUtils.createCircularReveal(v, x, y, endRadius,Math.max(width, height));
circularReveal.setDuration(2000); //动画时长
circularReveal.start();//开启动画
//实例化 5.0toolbar 在xml中声明
mToolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(mToolbar);
//获取ActionBar
ActionBar actionBar = getSupportActionBar();
actionBar.setDisplayHomeAsUpEnabled(true);
//ActionBar 与DrawerLayout有一个连接的工具类,可以做出一个炫酷的效果
ActionBarDrawerToggle drawerToggle = new ActionBarDrawerToggle(this, mDraw, mToolbar, R.string.opend_drawer, R.string.close_drawer);
//同步状态 (效果比较帅)
drawerToggle.syncState();
//与DrawLayout联动监听
mDraw.addDrawerListener(drawerToggle); //pupupWindow (类似与Dialog,可以自定义样式做出更帅气的样式)
pop = LayoutInflater.from(this).inflate(R.layout.popul, null);  //导入popupWindow布局
DisplayMetrics displayMetrics = getResources().getDisplayMetrics(); //得到屏幕的宽高
int widthPixels = displayMetrics.widthPixels;
int heightPixels = displayMetrics.heightPixels; mPopupWindow.setWidth(widthPixels * 2 / 3);
mPopupWindow.setHeight(heightPixels / 3);
mPopupWindow.setAnimationStyle(R.style.pop_animation); //导入动画 style 这里添加了进入和退出的动画
//点击popupWindow以外的地方 popupWindow会消失
mPopupWindow.setFocusable(true);
mPopupWindow.setOutsideTouchable(true);
mPopupWindow.setBackgroundDrawable(new BitmapDrawable()); //
得到控件的高度
int height = mOpen.getMeasuredHeight();//

//共享元素 需要在新页面和当前页面View设置一样的 transitionName值; 在页面跳转的时候我们会感觉前一页的控件是移动到新的页面的
ActivityOptionsCompat optionsCompat = ActivityOptionsCompat.makeSceneTransitionAnimation(this, v, string);  //指定共享动画的控件
Pair sharedElements = new Pair(v, string); //是可变参数
Pair pair = new Pair(mBtn, string1);//string1 transitionName的属性
ActivityOptionsCompat.makeSceneTransitionAnimation(this, sharedElements, pair);
//
startActivity(intent, optionsCompat.toBundle()); //动画只在5.0之上之上
DrawLayout android5.0推出的侧滑菜单
DrawerLayout包含两个或3个直接的Chiled默认是在中间 如果想让child显示在左边,作为左侧菜单用layout_gravity=left 或start
反之右边