所以注意使用的时候清单文件要设置下 android:minSdkVersion="11"(至少11) 但如果使用v4包,则不需修改 二、ActionBar常用操作 1、删除Action Bar 因为3.0...5、分割菜单栏 在API级别14以上(Android4.0),可以启用ActionBar的分隔操作栏模式,在屏幕的底部会显示一个独立的横条,用于显示Activity在窄屏或者竖屏上运行时的所有操作项 但是只是在底部显示所有的操作项...三、ActionBarTab.导航选项标签 你想要在一个Activity中提供导航选择标签时,使用操作栏的选项标签是一个非常好的选择,因为系统会调整操作栏选项标签来适应不同尺寸的屏幕的需要---在屏幕足够宽的时候...,导航选项标签会被放到主操作栏中;当屏幕太窄的时候,选项标签会被放到一个分离的横条中 ? ...当屏幕太窄的时候,选项标签会被放到一个分离的横条中 创建导航标签步骤 * 使用ActionBar的Tab导航 * 1、设置ActionBar的导航模式为TABS * 2、当前Activity实现ActionBar.TabListener
所以会调用多次,使用的时候需要注意。...回到正题: 很明显调用getLocalVisibleRect(Rect r)后localRect变量中的right和bottom正是图片的长和宽。...而调用getGlobalVisibleRect(Rect r)后localRect变量中的top是ActionBar的高度+View的上边距,bottom是top+View的高;left则为View的左边距...,right为left+View的宽。...(Android获取ActionBar高度链接) 所以目前的结论是:getLocalVisibleRect(Rect r)方法可以把View的长和宽映射到一个Rect对象上,映射的参照物就是View本身左上角的坐标系
二、Android屏幕区域的划分 Android屏幕区域主要划分为五个区域分别为:状态栏区域、ActionBar区域、View布局区域、应用程序App区域、屏幕区域,相互之间又存在嵌套关系。...下面我们来看看各个区域高度的获取: (1)、状态栏区域高度获取: //第一种方式,使用此方法一定要等界面渲染结束 Rect rect = new Rect();...width=view.getMeasuredWidth(); int height=view.getMeasuredHeight(); } }); (4)、应用程序...此时我们可以获取视图(View)宽高的方法: View宽高方法 : 方法说明 getWidth(): 当前View的宽度...,即getRight()-getLeft() getHeight(): 当前View宽度,即getBottom()-getTop() 需要注意的是使用以上方法的过程中要在View测量结束即渲染完成后
Activity的几种方式 6.横竖屏切换与状态保存的问题 7.系统给我们提供的常见的Activity 数据存储 接上文 Activity介绍 菜鸟整理来的完整Activity 简介:Activity是一个应用程序的组件...Activity可以理解成一个绘制用户界面的窗口, 而这个窗口可以填满整个屏幕,也可能比屏幕小或者浮动在其他窗口的上方! 总结:1....AppCompatActivity的区别: 区别: Activity就不用说啦,后面这两个都是为了低版本兼容而提出的提出来的,他们都在v7包下, ActionBarActivity已被废弃,从名字就知道,ActionBar...Activity设置一个属性: android:persistableMode=“persistAcrossReboots” 然后我们的Activity就拥有了持久化的能力了,一般我们会搭配另外两个方法来使用...之所以有两个可以获取到保存数据的方法,是为了避免Act跳转而没有关闭, 然后不走onCreate()方法,而你又想取出保存数据~ 说回这个Activity拥有了持久化的能力,增加的这个PersistableBundle
隐藏状态栏 一个Android应用程序的界面上其实是有很多系统元素的,观察下图: ? 可以看到,有状态栏、ActionBar、导航栏等。...actionBar = getSupportActionBar(); actionBar.hide(); 这里我们同时使用了SYSTEM_UI_FLAG_HIDE_NAVIGATION和SYSTEM_UI_FLAG_FULLSCREEN...这次看上去好像终于是完全全屏化了,但其实上这离真正的沉浸式模式还差得比较远,因为在这种模式下,我们触摸屏幕的任意位置都会退出全屏。 ? 这显然不是我们想要的效果,因此这种模式的使用场景比较有限。...actionBar = getSupportActionBar(); actionBar.hide(); 这里使用了SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION,表示会让应用的主体内容占用系统导航栏的空间...首先你应该确定自己是否真的需要这个功能,因为除了像游戏或者视频软件这类特殊的应用,大多数的应用程序都是用不到沉浸式模式的。
实际开发时,我们在xml布局里设置控件的宽高属性都是以“dp”做为单位,甚至还会遇到横竖屏页面适配情况。...如果想给横屏提供适配于大屏幕,那么则需要使用large和land修饰符。...2.尽量使用wrap_content、mach_parent让view自适应或最大化,尽量不要写宽高的值。...APIs if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) { ActionBar actionBar =...getActionBar(); actionBar.setDisplayHomeAsUpEnabled(true); } } 最后,使用项目的风格和主题跟随系统版本改变外观。
如果你还没有看过前面一篇文章的话,建议先去阅读Android ActionBar完全解析,使用官方推荐的最佳导航栏(上)。...而Android官方更加推荐使用ActionBar中提供的Tabs功能,因为它更加的智能,可以自动适配各种屏幕的大小。...比如说,在平板上屏幕的空间非常充足,Tabs会和Action按钮在同一行显示,如下图所示: ? 而如果是在手机上,屏幕的空间不够大的话,Tabs和Action按钮则会分为两行显示,如下图所示: ?...下面我们就来看一下如何使用ActionBar提供的Tab功能,大致可以分为以下几步: 1....自定义ActionBar样式 虽说ActionBar给用户提供了一种全局统一的界面风格和操作方式,但这并不意味着所有应用程序的ActionBar都必须要长得一模一样。
使用ActionBar的好处是,它可以给提供一种全局统一的UI界面,使得用户在使用任何一款软件时都懂得该如何操作,并且ActionBar还可以自动适应各种不同大小的屏幕。...而如果想要移除ActionBar的话通常有两种方式,一是将theme指定成Theme.Holo.NoActionBar,表示使用一个不包含ActionBar的主题,二是在Activity中调用以下方法:...添加Action按钮 ActionBar还可以根据应用程序当前的功能来提供与其相关的Action按钮,这些按钮都会以图标或文字的形式直接显示在ActionBar上。...中,如果屏幕空间不够则无法显示,ifRoom表示屏幕空间够的情况下显示在ActionBar中,不够的话就显示在overflow中,never则表示永远显示在overflow中。...没错,title中的内容通常情况下只会在overflow中显示出来,ActionBar中由于屏幕空间有限,默认是不会显示title内容的。
今天我就来分享一下怎么使用一套代码,快速打包生成各主流平台安装包的经验。...项目安装 首先,使用我前面介绍的提效小技巧,设置: NPM 源为淘宝镜像源; Electron 源为中国镜像网站中的 Electron 源地址。...xxx/icon.ico" }, "nsis": { "oneClick": false, // 一键安装 "guid": "xxxx", //注册表名字,不推荐修改...如果为false,则用户必须使用提升的权限重新启动安装程序。...总结 以上就是在不联网的情况下使用 electron-builder 打包全平台桌面应用的记录。 ~ ~ 本文完,感谢阅读! ~ 学习有趣的知识,结识有趣的朋友,塑造有趣的灵魂!
一、应用程序启动Activity 当用户在桌面上点击应用程序按钮,系统会调用应用程序Activity的onCreate()方法来初始化activity。...这个activity是为用户提供应用程序的接口。 可以在AndroidManifest.xml中设置哪一个Activity作为主Activity....主Activity必须为你的应用程序申明,其中包括Main action和Launcher catgory....actionBar = getActionBar(); actionBar.setHomeButtonEnabled(false); } } 当onCreate()执行结束,系统将调用...方法被调用时,Activity开始对用户可见,紧接着执行onResume方法,Activity将一直保持onResume状态,直至一些事件发生,比如接电话,用户的导航指向其他activity,或者设备屏幕熄灭
这些能力让开发减少了对运维相关属性的关注,但也让一些开发把一些错误当成了特性来使用,比如针对一些无状态的服务,利用 OOM 和自动重启来恢复。...一次OOM导致的k8s节点卡死 最初的现象:节点进入假死状态,登录节点上后ps等系统命令无法使用,节点监控看CPU、内存、负载情况: image.png image.png 可以看到节点的CPU,内存没什么变化...简单说下原理: image.png 系统内有两个用户进程,位于同一个 cgroup 中,cgroup 上限制最大可用的内存; 进程 1,分配大量内存,使得 cgroup 内存使用量超过限制,OOM Killer
关于 ActionBar 和 ToolBar 的使用没有细致讲解。...actionBar = getSupportActionBar(); actionBar.hide(); // 情况说明:采用这种方式全屏,如果你切换到别的应用程序,或者在通知栏下拉一下,状态栏就会下来...记住这个属性长和 FLAG_LAYOUT_XXX 这种属性在一起使用。...Android 4.4 修改状态栏颜色 // 将状态栏设置为透明(需要 API 19) 设置成这种模式后,状态栏会变成透明,我们的内容布局(只是我们 Activity 对应的布局,不包含 Window...View mStatusBarView = new View(context); int screenWidth = 屏幕宽度; int statusBarHeight = 状态栏高度(是可以获取的);
actionBar) { mActionBar = actionBar; if (isShowing()) { actionBar.show()...通过编程来实例化使用这个类。这个媒体控制器将创建一个具有默认设置的控件,并把它们放到一个窗口里漂浮在你的应用程序上。具体来说,这些控件会漂浮在通过setAnchorView()指定的视图上。...几个重要方法解析: public void hide () 从屏幕中移除控制器。...public void show (int timeout) 在屏幕上显示这个控制器。它将在闲置’超时 (timeout)’毫秒到达后自动消失。 参数:timeout 这个参数以毫秒为单位。...但是当您在设备中运行应用程序时,加载的是framework.jar(大约等价于android.jar),它没有被裁减,包含所有的内部类和隐藏API。所以您可以使用反射机制来访问隐藏API和内部API
---- 零、前言 Action bar是一个标识应用程序和用户位置的窗口功能,并且给用户提供操作和导航模式。...在大多数的情况下,当你需要突出展现用户行为或全局导航的activity中使用action bar,因为action bar能够使应用程序给用户提供一致的界面,并且系统能够很好根据不同的屏幕配置来适应操作栏的外观...actionBar=getSupportActionBar(); //获取ActionBar actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS...:theme="@style/Theme.AppCompat.Light.DarkActionBar" 改完之后,颜色就变黑了 ---- 本次主要总结了Android开发中Action Bar的基础使用...当然现在已经不会去开发原生安卓了,而会使用uni-app来顺带开发Android,但我个人觉得基础还是要打扎实。
如果你还没有看过我的前两篇文章,建议先去阅读一下 Android ActionBar完全解析,使用官方推荐的最佳导航栏(上) 和 Android ActionBar完全解析,使用官方推荐的最佳导航栏(下...相信大家都会认定微信是在手机上最火的应用程序了,几乎每个人的手机上都有安装它。微信除了功能非常强大之外,界面也是做得相当美观,它的ActionBar让人看着有一种赏心悦目的感觉,如下图所示: ?...作为手机应用程序中的技术标杆,我们自然应该多多向微信学习,那么今天实战的主题,就是模仿微信主界面的实现。 首先新建一个Android项目,起名叫作WeChatSample。...虽说在上一篇文章当中已经讲解过如何在ActionBar当中创建Tab了,但是这里我并不准备使用它,因为它的灵活性不够强,很难做出和微信一模一样的Tab效果。...而ActionBar Tab的替代品也很多,我们可以自己写,也可以使用网上现有的开源框架,PagerSlidingTabStrip这个框架就挺不错,这里简单和稳定起见,我们就直接使用它了。
ActionBar 简介 ActionBar 位置 : 位于老版本的标题栏位置; ActionBar 功能简介 : -- 菜单显示 : 显示选项菜单; -- 回退键 : 程序图标可以作为回退键使用;...ActionBar, 现有手机大部分都是 4.0 以上, 就不使用 supportV4 兼容了, 直接使用高版本 sdk; -- 创建工程示例 : 注意 Theme 选择 None, 选择其它主题会出错...使用代码控制 ActionBar 显示 隐藏 (1) ActionBar 相关方法 ActionBar 相关方法解析 : -- Activity 中获取 ActionBar 对象 : 使用 getActionBar...; -- setDisplayOption(int) : 设置 ActionBar 的显示选项; -- setDisplayShowHomeEnable(boolean) : 设置是否显示应用程序图标;...(true); /* 不显示应用程序图标 */ actionBar.setDisplayShowHomeEnabled(false); 设置点击图表回调事件 : ActionBar 中的图表代表的组件
&e7输入&e/rules&7查看服务器规则 若指令以 actionbar! 开头,则会发送一条Actionbar(物品栏上方)消息给所有在线玩家 - actionbar!...开头,则会发送一条Title(屏幕中间第一行)消息给所有在线玩家 - title! &7欢迎来到&Bxxx&7服务器 若指令以 subtitle!...开头,则会发送一条Title(屏幕中间第二行)消息给所有在线玩家 - subtitle! &6祝你玩得愉快:)! 若指令以 kickall!...killall 若在使用中在两行之间插入 delay! [秒] 则延迟指定秒后继续执行下方操作 - cmi launch [playerName] - delay!...指令或下方的所有行都将在[秒]后执行, 如下方,意思为立即治疗玩家,但是在20秒之内你无法再次执行该操作指令来治疗这名玩家了 通俗来讲就是,如果我设置玩家进服执行heal执行,然后在立即退出服务器又立即进来 期间时间不超过
View 是 Android 中最基本的一种 UI 组件,它可以在屏幕上绘制一块矩形区域,并且能够响应这块区域的各种事件,因此,我们使用的各种控件其实就是在 View 的基础的又添加了一些特有的功能。...3.4.1 引入布局 我们知道现在的应用程序几乎在界面顶部都有一个标题栏,虽然 Android 系统已经给我们提供了,但是这里我们不用它,我们自己创建一个。 我们自己创建一个布局 <?...很简单,在需要使用的布局中。 就添加上面一句话就把刚刚的布局引入了。...super.onCreate(savedInstanceState); setContentView(R.layout.activity_ui); ActionBar actionBar...= getSupportActionBar(); if (actionBar !
的配置,在此配置为当屏幕宽度不够时控件自动显示在屏幕底部 android:configChanges="orientation|keyboardHidden|screenSize" //用于禁止横竖屏切换...第三,第二条说法成立的条件是必须是Android3.2以下的版本,如果高于该版本,则必须在该属性后加上screensize(屏幕的size),才会起作用。..., ActionBar.DISPLAY_SHOW_CUSTOM); //顶部导航栏右边显示开关,控件宽高自适应,垂直居中...圈2:ActionBar底部栏,可进行蓝牙设备的搜索,检测时间,已配对设备列表等一些除了配对之外的设置,Actionbar的相关布局在onCreateOptionsMenu方法中,利用如下代码可自定义actionbar...mDiscoverable; setEnabled(mDiscoverable); return true; } 在更新summary的时候涉及到对可检测性时间的更新,说一下实现逻辑不贴代码了
领取专属 10元无门槛券
手把手带您无忧上云