黑马程序员---手机卫士day4 自定义土司

自定义土司

首先得到一个 窗口管理器

WindowManager wm = (WindowManager) getSystemService(WINDOW_SERVICE);

通过窗口管理器 绑定一个view 和窗口参数params 就能生成一个土司 土司的显示内容就是view的内容

wm.addView(view, params);

示例:

<span style="white-space:pre">		</span>view = View.inflate(this, R.layout.address_show, null);
		TextView textview = (TextView) view.findViewById(R.id.tv_address);

		// "半透明","活力橙","卫士蓝","金属灰","苹果绿"
		int[] ids = { R.drawable.call_locate_white,
				R.drawable.call_locate_orange, R.drawable.call_locate_blue,
				R.drawable.call_locate_gray, R.drawable.call_locate_green };
		SharedPreferences sp = getSharedPreferences("config", MODE_PRIVATE);
		view.setBackgroundResource(ids[sp.getInt("which", 0)]);
		textview.setText(address);
		// 窗体的参数就设置好了
		WindowManager.LayoutParams params = new WindowManager.LayoutParams();

		params.height = WindowManager.LayoutParams.WRAP_CONTENT;
		params.width = WindowManager.LayoutParams.WRAP_CONTENT;

		params.flags = WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE
				| WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE
				| WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON;
		params.format = PixelFormat.TRANSLUCENT;
		params.type = WindowManager.LayoutParams.TYPE_TOAST;

		wm.<strong>addView</strong>(view, params);

代码注册receiver

<span style="white-space:pre">		</span>// 用代码去注册广播接收者
		receiver = new OutCallReceiver();
		//意图匹配器
		<strong>IntentFilter</strong> filter = new IntentFilter();
		//指定要过滤得到的行为
		filter.<strong>addAction</strong>("android.intent.action.NEW_OUTGOING_CALL");
		//(注册)绑定action到receiver
		<strong>registerReceiver</strong>(receiver, filter);
时间: 2024-12-16 03:50:57

黑马程序员---手机卫士day4 自定义土司的相关文章

黑马程序员金山卫士实战短信备份2集

黑马程序员 大师班 安卓项目实战-分分钟搞定 金山卫士实战短信备份2集 有很多用户们在使用智能手机的过程中有及时清理手机,删除电话记录以及短信的习惯,以此来保证手机的纯净,但是有时我们会有一些重要的信息想要保存下来,这时该怎么办呢?备份就是一个很好的办法... 课程包含 短信备份.代码优化 下载地址:http://www.feixueteam.net/thread-947-1-1.html

黑马程序员---工具类---OC自定义函数---计算当前路径下所有文件的总行数

------iOS培训.Java培训.Android培训, iOS学习型技术博客,期待与您交流------ 计算当前路径下所有文件的总行数 /* 计算当前路径下所有文件的总行数 涉及到NSArray.NSString.NSFileManager */ // 计算当前全路径(文件\文件夹)下所有文件的行数 // 接收参数path:文件的全路径(文件.文件夹) NSUInteger codeLinesCount(NSString *path) { // 1.获得文件管理者    单例模式:整个程序的

黑马程序员——自定义类加载器

自定义类加载器是在是血的不怎明白 这里只学会了一个简单的加密解密方法 //定义一个加密方法 public static void md(InputStream inputStream,OutputStream outputStream) throws Exception{  int b = 0;  while((b = inputStream.read())!=-1){   //使用^异或,相同的为0,不同的为1,由于0xff是255,后八位都是1,   //这样就将原来的1变成了0,0变成了1

黑马程序员_毕向东_Java基础视频教程_Java基础学习知识点总结

黑马程序员_毕向东_Java基础视频教程 Java基础学习知识点总结 2016年01月06日  day01 一.基础知识:软件开发 1.什么是软件?软件:一系列按照特定顺序组织的计算机数据和指令的集合. 2.常见的软件:系统软件:如:DOS,Windows,Linux等.应用软件:如:扫雷,迅雷,QQ等. 3.什么是开发?制作软件. 二.基础知识:人机交互方式 4.软件的出现实现了人与计算机之间的更好的交互. 5.交互方式:图形化界面:这种方式简单直观,使用者易于接受,容易上手操作.命令行方式:

黑马程序员____第一阶段Java开发前奏(1)

  黑马程序员____第一阶段Java开发前奏(1) ⒈软件开发:        软件是由一系列按照特定顺序组织的计算机数据和指令的集合,软件开发就是制作软件.软件的出现实现了人与计算机之间的交互.    ⒉人机交互方式:        图形化界面和命令行方式,图形化界面简单直观,使用者易于接受,容易上手操作.命令行方式需要有一个控制台,输入特定的指          令,让计算机完成一些操作,较为麻烦,需要记住一些命令.    3.常用的DOS命令:     dir:列出当前目录下的文件以及文

黑马程序员--Java基础--01基本概念

1.Java的三大技术架构 JAVAEE(Java Platform Enterprise Edition):  开发企业环境下的应用程序,主要针对web程序开发: JAVASE(Java Platform Standard Edition): 完成桌面应用程序的开发,是其他两者的基础 JAVAME(Java Platform Micro Edition): 开发电子消费产品和嵌入式设备,如手机中的程序 我对三大技术构架理解 1.三大技术是指哪三大技术呢? 答:三大技术分别指JAVAEE,JAV

黑马程序员:2000字带你回顾2016WWDC

前言 纵观WWDC 2016开发者大会的全部内容,尽管本次大会没有那些新的产品发布,不过能让各位果粉的肾留到秋天,那也是苹果公司对各位果粉的关爱啊.但是对iOS开发者而言,新发布的技术还是比较不错的.主要内容包括四大系统(watchOS.tvOS.macOS.iOS 10)和Tim Cook钟爱的Swift Playgrounds. 一. watchOS 率先上台的是watchOS 3,其最大的亮点就是即时启动,在 watchOS 2 中,启动一个App大概需要4秒左右,而在 watchOS 3

跟黑马程序员一起玩转Android N

北京时间5月19号凌晨1点,Google在美国加州山景城举办了2016年的I/O开发者大会.这是一场面向全世界开发者介绍系统.软件更新的盛会.今年的I/O大会Google推出了众多新产品,包括Android N(7.0).智能穿戴AndroidWear2.0.智能家居.VR虚拟现实等等. 虽说整个大会的重心偏向了人工智能(Google assistant.Allo&Duo .Google Home),但Android操作系统作为智能设备的"核心"(Android系统从手表.手机

黑马程序员——网络编程篇

------- android培训.java培训.期待与您交流! ---------- 概述   1.网络模型        (1).OSI参考模型        (2).TCP/IP参考模型   2.网络通讯要素         (1).IP地址        (2).端口号         (3).传输协议    3.过程        1,找到对方IP. 2,数据要发送到对方指定的应用程序上.为了标识这些应用程序,所以给这些网络应用程序都用数字进行标识. 为了方便称呼这个数据,叫做端口(逻