状态栏

iOS- 简单说说UIApplication

人走茶凉 提交于 2020-01-11 17:36:13
一.什么是UIApplication 1.UIApplication对象是应用程序的象征 2.每一个应用都有自己的UIApplication对象,而且是单例的 3.通过[UIApplication sharedApplication]可以获得这个单例对象 4.一个iOS程序启动后创建的第一个对象就是UIApplication对象 5.利用UIApplication对象,能进行一些应用级别的操作 我们经常看见的一些应用就是UIApplication控制的,例如 1.设置应用程序图标右上角的红色提醒数字 @property(nonatomic) NSInteger applicationIconBadgeNumber; 2.n设置联网指示器的可见性   @property(nonatomic,getter=isNetworkActivityIndicatorVisible) BOOL networkActivityIndicatorVisible;       二.iOS7中的状态栏 1.从iOS7开始,系统提供了2种管理状态栏的方式 通过UIViewController管理(每一个UIViewController都可以拥有自己不同的状态栏) 通过UIApplication管理(一个应用程序的状态栏都由它统一管理) 2在iOS7中,默认情况下

uniapp获取手机状态栏和头部导航栏高度(可用于制作头部自定义导航栏)

时光怂恿深爱的人放手 提交于 2020-01-11 06:48:21
statusBar ---------- 状态栏高度 customBar -------- 状态栏高度 + 导航栏高度 1 、建议在公共位置使用该段代码,以达到可以全局复用的效果。 这里我们存在store中,存在store中有个好处,就是能够实时变化。 避免uni.getSystemInfo()执行未完成时就渲染高度,而在uni.getSystemInfo()完成后无法实时变换高度。 2 、这里又存在一个问题,直接使用this.$store.state.statusBar设置在布局标签上有时会不生效。 解决方法: 重新赋值给该页面自定义的变量,然后设置到布局标签上则能够成功。 话不多说直接上代码 uni.getSystemInfo({ success: (e: any) => { // this.compareVersion(e.SDKVersion, '2.5.0') let statusBar = 0 let customBar = 0] // #ifdef MP statusBar = e.statusBarHeight customBar = e.statusBarHeight + 45 if (e.platform === 'android') { this.$store.commit('SET_SYSTEM_IOSANDROID', false) customBar =

Android 沉浸式状态栏适配(兼容多机型)

◇◆丶佛笑我妖孽 提交于 2019-12-27 03:33:39
适配状态栏百度千篇一律的判断机型,由于在RN开发时设置状态栏也就一句代码的事,我翻了以下android的文档,分享一下我在项目中如何适配状态栏 状态栏适配,实则是完成以下操作: 1. 状态栏透明 ,布局直接从屏幕顶部开始,布局顶部加padding即可 2.状态栏 背景白色 时, 字体变成黑色 ,反之则设为白色 3. android6.0之前不提供修改状态栏字体颜色的方法 ,所以我采用给它设一个半透明黑色背景,突显出白色字体,类似与播放器的白色按钮一样,背景是半透明的黑色 4.有些界面需要 隐藏状态栏 (如:视频播放页等) 效果图: 一般页面适配 白色背景适配 6.0以下适配效果 下面贴出代码, 正常的activity只需要复制对应代码调用即可,封装在baseactivty或者封装成工具类都可以。 如果是单Activity多Fragment项目,可以借助navigation在NavController.setDestinationChangedListener中的addOnDestinationChangedListener接口中,判断当前显示的fragment,做出对应适配操作即可 在需要适配的activity中,加入以下方法: fun changeStatusBarTransparent(activity: Activity) { if (Build.VERSION.SDK

android 状态栏的高度

风流意气都作罢 提交于 2019-12-18 05:21:43
/** * 状态栏的高度 */ public class StatusBarHeightView extends LinearLayout { private int statusBarHeight; private int type; public StatusBarHeightView(Context context, @Nullable AttributeSet attrs) { super(context, attrs); init(attrs); } public StatusBarHeightView(Context context, @Nullable AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); init(attrs); } public StatusBarHeightView(Context context, @Nullable AttributeSet attrs, int defStyleAttr, int defStyleRes) { super(context, attrs, defStyleAttr); init(attrs); } private void init(@Nullable AttributeSet attrs) { int

小程序完美适配自定义导航

巧了我就是萌 提交于 2019-12-16 14:17:35
主要两大核心接口:   1. wx.getSystemInfoSync()   //获取系统信息(获取手机状态栏高度 statusBarHeight )   2. wx.getMenuButtonBoundingClientRect()   //获取菜单按钮(右上角胶囊按钮)的布局位置信息。坐标信息以屏幕左上角为原点(也就是通过获取胶囊相关信息得出导航栏高度)   通过官方接口得出状态栏高度和导航栏高度 1 const sys = wx.getSystemInfoSync(); 2 const capsule = wx.getMenuButtonBoundingClientRect() 3 // console.log(capsule) 4 const navHeight = (capsule.top - sys.statusBarHeight) * 2 + capsule.height 5 this.setData({ 6 statusBarHeight: sys.statusBarHeight,  //状态栏高度 7 navHeight  //导航栏高度 8 }) 来源: https://www.cnblogs.com/jay-sans/p/12034727.html

iOS UIImageView自适应图片大小

南笙酒味 提交于 2019-12-08 03:23:08
窗口大小获取: CGRect screenBounds = [ [UIScreenmainScreen]bounds];//返回的是带有状态栏的Rect CGRect rect = [ [UIScreenmainScreen]applicationFrame];//不包含状态栏的Rect UIImageView: 一 :圆角以及自适应图片大小 UIImage* image = [UIImage imageNamed:@"image.png"]; UIImageView* imageView = [[[UIImageView alloc] initWithImage:image] autorelease]; imageView.frame = CGRectMake(0, 0, 300, 200); imageView.layer.cornerRadius = 8; imageView.layer.masksToBounds = YES; //自适应图片宽高比例 imageView1.contentMode = UIViewContentModeScaleAspectFit; 二 图片自适应UIImageView (来源于:http://www.61ic.com/Mobile/iPhone/201103/29636.html) - (UIImage *

UIImageView自适应图片大小

杀马特。学长 韩版系。学妹 提交于 2019-12-08 03:22:10
转自:http://www.cnblogs.com/zhidao-chen/archive/2013/05/20/3088164.html 窗口大小获取: CGRect screenBounds = [ [ UIScreenmainScreen ] bounds ]; // 返回的是带有状态栏的 Rect CGRect rect = [ [UIScreenmainScreen]applicationFrame];//不包含状态栏的Rect UIImageView: 一 :圆角以及自适应图片大小 UIImage* image = [UIImage imageNamed:@"image.png"]; UIImageView* imageView = [[[UIImageView alloc] initWithImage:image] autorelease]; imageView .frame = CGRectMake(0, 0, 300, 200); imageView.layer.cornerRadius = 8; imageView.layer.masksToBounds = YES; //自适应图片宽高比例 imageView1.contentMode = UIViewContentModeScaleAspectFit; 二 图片自适应UIImageView (来源于:http

ios上 更改 状态栏(UIStatusBar)的颜色,你值得一看、收藏

…衆ロ難τιáo~ 提交于 2019-12-07 21:23:25
作者:shede333 主页:http://my.oschina.net/shede333 && http://blog.sina.com.cn/u/1509658847 版权声明:原创文章,版权声明:自由转载-非商用-非衍生-保持署名 | [Creative Commons BY-NC-ND 3.0][] #IOS上 关于状态栏的相关设置(UIStatusBar) ##知识普及 ios上状态栏 就是指的最上面的20像素高的部分 状态栏分前后两部分,要分清这两个概念,后面会用到: 前景部分 :就是指的显示电池、时间等部分; 背景部分 :就是显示黑色或者图片的背景部分; 如下图:前景部分为白色,背景部分为黑色 注意:这里只涉及到ios7以及更高版本,低版本下面的讲解可能无效。 ##设置statusBar的【前景部分】 简单来说,就是设置显示电池电量、时间、网络部分标示的颜色, 这里只能设置两种颜色: 默认的黑色( UIStatusBarStyleDefault ) 白色( UIStatusBarStyleLightContent ) 可以设置的地方有两个:plist设置里面 和 程序代码里 ###1.plist设置statusBar 在plist里增加一行 UIStatusBarStyle (或者是“Status bar style”也可以),这里可以设置两个值,就是上面提到那两个

Android刘海屏适配 ----- ImmersionBar

老子叫甜甜 提交于 2019-12-06 02:58:44
android 4.4以上沉浸式状态栏和沉浸式导航栏管理,适配横竖屏切换、刘海屏、软键盘弹出等问题,可以修改状态栏字体颜色和导航栏图标颜色,以及不可修改字体颜色手机的适配,适用于Activity、Fragment、DialogFragment、Dialog,PopupWindow; 引入 // 基础依赖包,必须要依赖 implementation 'com.gyf.immersionbar:immersionbar:3.0.0' // fragment快速实现(可选) implementation 'com.gyf.immersionbar:immersionbar-components:3.0.0' // kotlin扩展(可选) implementation 'com.gyf.immersionbar:immersionbar-ktx:3.0.0 关于全面屏与刘海 ① 在manifest的Application节点下加入 <meta-data android:name="android.max_aspect" android:value="2.4" /> ② 在manifest的Application节点中加入 android:resizeableActivity="true" ③ 在manifest的Application节点中加入 android

android 通知 Notification、NotificationManager详解

喜你入骨 提交于 2019-12-06 01:18:19
在Android系统中,发一个状态栏通知还是很方便的。下面我们就来看一下,怎么发送状态栏通知,状态栏通知又有哪些参数可以设置? 首先,发送一个状态栏通知必须用到两个类: NotificationManager 、 Notification。 NotificationManager : 是状态栏通知的管理类,负责发通知、清楚通知等。 NotificationManager 是一个系统Service,必须通过 getSystemService()方法来获取。 [java] view plaincopyprint? NotificationManager nm = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); Notification:是具体的状态栏通知对象,可以设置icon、文字、提示声音、振动等等参数。 下面是设置一个通知需要的基本参数: An icon (通知的图标) A title and expanded message (通知的标题和内容) A PendingIntent (点击通知执行页面跳转) 可选的设置: A ticker-text message (状态栏顶部提示消息) An alert sound (提示音) A vibrate setting (振动) A flashing LED