当前位置: 首页 > news >正文

律师事务所网站建设策划方案网站没有后台登陆文件夹

律师事务所网站建设策划方案,网站没有后台登陆文件夹,简述网站推广的方式,h5游戏源码网1.前言 在10.0的系统rom定制化开发中#xff0c;在对于launcher3的一些开发定制中#xff0c;在对hotseat的一些开发中#xff0c;需要实现动态hotseat居中 的功能#xff0c;就是在拖拽图标进入和拖出hotseat#xff0c;都可以保持hotseat居中的功能#xff0c;接下来分…1.前言 在10.0的系统rom定制化开发中在对于launcher3的一些开发定制中在对hotseat的一些开发中需要实现动态hotseat居中 的功能就是在拖拽图标进入和拖出hotseat都可以保持hotseat居中的功能接下来分析下相关功能实现 具体如图: 2.Launcher3拖拽图标进入hotseat自适应布局功能实现一的核心类 packages\apps\Launcher3\src\com\android\launcher3\Hotseat.java 3.Launcher3拖拽图标进入hotseat自适应布局功能实现一的核心功能分析和实现 Launcher顾名思义,就是桌面的意思,也是android系统启动后第一个启动的应用程序, :Launcher3负责管理和展示用户手机桌面上的各个应用程序图标。它通过GridView或者LinearLayout等布局管理器将 图标进行排列,并支持滑动、放大缩小等手势操作 Hotseat也是属于在导航栏底部的BubbleTextView的布局只是不显示app图标 3.1 Hotseat.java相关添加背景功能分析 在实现Launcher3拖拽图标进入hotseat自适应布局功能实现一的核心功能中通过上述的分析得知 首选需要给Hotseat添加背景功能然后需要根据hotseat的数量多少来设置hotseat的宽度高度等 相关参数这样就实现了第一步的hotseat的居中显示功能 public class Hotseat extends CellLayout implements LogContainerProvider, Insettable, Transposable {ViewDebug.ExportedProperty(category launcher)public boolean mHasVerticalHotseat;private final HotseatController mController;public Hotseat(Context context) {this(context, null);}public Hotseat(Context context, AttributeSet attrs) {this(context, attrs, 0);}public Hotseat(Context context, AttributeSet attrs, int defStyle) {super(context, attrs, defStyle);mController LauncherAppMonitor.getInstance(context).getHotseatController();}public HotseatController getController() {return mController;}/* Get the orientation specific coordinates given an invariant order in the hotseat. */public int getCellXFromOrder(int rank) {return mHasVerticalHotseat ? 0 : rank;}public int getCellYFromOrder(int rank) {return mHasVerticalHotseat ? (getCountY() - (rank 1)) : 0;}public void resetLayout(boolean hasVerticalHotseat) {removeAllViewsInLayout();mHasVerticalHotseat hasVerticalHotseat;InvariantDeviceProfile idp mActivity.getDeviceProfile().inv;if (hasVerticalHotseat) {setGridSize(1, idp.numHotseatIcons);} else {setGridSize(idp.numHotseatIcons, 1);}//add core start// 添加背景if(idp.numHotseatIcons0){setBackgroundResource(R.drawable.shape_corner);}//add core end}Overridepublic void fillInLogContainerData(View v, ItemInfo info, Target target, Target targetParent) {target.gridX info.cellX;target.gridY info.cellY;targetParent.containerType LauncherLogProto.ContainerType.HOTSEAT;}Overridepublic void setInsets(Rect insets) {FrameLayout.LayoutParams lp (FrameLayout.LayoutParams) getLayoutParams();DeviceProfile grid mActivity.getWallpaperDeviceProfile();insets grid.getInsets();if (grid.isVerticalBarLayout()) {lp.height ViewGroup.LayoutParams.WRAP_CONTENT;if (grid.isSeascape()) {lp.gravity Gravity.LEFT;lp.width grid.hotseatBarSizePx insets.left;} else {lp.gravity Gravity.RIGHT;lp.width grid.hotseatBarSizePx insets.right;}} else {lp.gravity Gravity.BOTTOM;lp.width ViewGroup.LayoutParams.MATCH_PARENT;lp.height grid.hotseatBarSizePx insets.bottom;}Rect padding grid.getHotseatLayoutPadding();setPadding(padding.left, padding.top, padding.right, padding.bottom);setLayoutParams(lp);InsettableFrameLayout.dispatchInsets(this, insets);}Overridepublic boolean onTouchEvent(MotionEvent event) {// Dont let if follow through to workspacereturn true;}Overridepublic RotationMode getRotationMode() {return Launcher.getLauncher(getContext()).getRotationMode();} } 在实现Launcher3拖拽图标进入hotseat自适应布局功能实现一的核心功能中通过上述的分析得知 在Hotseat中相关源码分析可以发现由 resetLayout 就是负责布局的 当hotseat 增加减少时都会重新布局 所以在setBackgroundResource(R.drawable.shape_corner);添加背景就可以了 public void resetLayout(boolean hasVerticalHotseat) {removeAllViewsInLayout();mHasVerticalHotseat hasVerticalHotseat;InvariantDeviceProfile idp mActivity.getDeviceProfile().inv;if (hasVerticalHotseat) {setGridSize(1, idp.numHotseatIcons);} else {setGridSize(idp.numHotseatIcons, 1);}// 添加背景if(idp.numHotseatIcons0){setBackgroundResource(R.drawable.shape_corner);}}shape_corner.xml?xml version1.0 encodingutf-8? shape xmlns:androidhttp://schemas.android.com/apk/res/android!--背景颜色--solid android:color#FFFAFA /!--角的半径--corners android:radius10dp/!--边框颜色--stroke android:width1dp android:color#00000000 / /shapepublic void setInsets(Rect insets) {FrameLayout.LayoutParams lp (FrameLayout.LayoutParams) getLayoutParams();DeviceProfile grid mActivity.getWallpaperDeviceProfile();insets grid.getInsets();//竖屏布局if (grid.isVerticalBarLayout()) {lp.height ViewGroup.LayoutParams.WRAP_CONTENT;if (grid.isSeascape()) {lp.gravity Gravity.LEFT;lp.width grid.hotseatBarSizePx insets.left;} else {lp.gravity Gravity.RIGHT;lp.width grid.hotseatBarSizePx insets.right;}} else {//modify core start// 横屏布局// 平板开发项目 固定横屏所以要在这里设置参数// 设置宽高 左边底部的间距InvariantDeviceProfile idp mActivity.getDeviceProfile().inv;int hotseatNums idp.numHotseatIcons;lp.width hotseatNums*grid.hotseatBarSizePx(hotseatNums1)*dip2px(15.0f);lp.height grid.hotseatBarSizePx insets.bottom;if(getResources().getConfiguration().orientation Configuration.ORIENTATION_PORTRAIT){lp.leftMargin (int)((1080-lp.width)/2);}else{lp.leftMargin (int)((1920-lp.width)/2);}lp.gravity Gravity.BOTTOM;//modify core end}Rect padding grid.getHotseatLayoutPadding();// 设置padding 布局setPadding(0, padding.top, 0,0);setLayoutParams(lp);InsettableFrameLayout.dispatchInsets(this, insets);} 在实现Launcher3拖拽图标进入hotseat自适应布局功能实现一的核心功能中通过上述的分析得知 在Hotseat中相关源码分析 而setInset() 负责设置绘制布局 的参数 这里设置hotseat的宽高等参数布局 其实只需要修改lp的参数就行了 然后hotseat 会根据长宽等参数 来具体布局每一个hotseat的具体坐标 根据横竖屏来确定lp.leftMargin的值就可以保证居中显示
http://www.w-s-a.com/news/835646/

相关文章:

  • 苏州网站建设都找全网天下外贸响应式网站设计
  • 揭阳专业做网站网站迁移教材
  • 手机上怎么上传网站吗工程信息网站建设
  • 用手机建网站微信手机网站流程
  • 专注软件优化分享的网站梧州网页设计
  • 长春火车站和高铁站是一个站吗公司名称注册查询系统
  • 便利的集团网站建设网页的依托网站
  • 茶叶网站建设题库制作助手app
  • 网站建设栏目层级北京网站搭建公司电话
  • 网站开发运营经理打开百度竞价页面是网站是什么
  • 国内最专业的设计网站建设现在用什么语言做网站
  • 湖南网站开发 岚鸿象山县建设工程招投标网站
  • 长沙免费网站排名wordpress 教学
  • 专门做app的网站html代码是什么
  • 临沂网站制作建设欧米茄表官网
  • 北京模板网站开发全包网站建设的第三方平台
  • 在凡科做的网站怎么推广网页模板下载 免费 html
  • 有关网站建设的标题仿亿欧网wordpress
  • 网站建设公司销售招聘常用的搜索引擎有哪些?
  • wordpress中.htaccess新上线的网站怎么做优化
  • 家教网站怎么做网站建设品牌推荐
  • 青岛做外贸网站建设茶叶公司网站建设策划书
  • 个人电脑做网站主机三合一网站
  • 用html框架做网站怎么在.Net中做团购网站
  • 怎样建一个自己公司的网站制作网站需要钱吗
  • 联盟网站制作wap网站制作公司
  • 美丽乡村建设发展论坛网站wordpress 仿站 教程网
  • 浙江省建设注册管理中心网站首页优设设计网站导航
  • 台州小型网站建设国内免费的建网站平台
  • 自己做网站不推广网站建设工作室发展