当前位置: 首页 > 编程日记 > 正文

Android_CodeWiki_01

 记录常用代码片,以备不时之需..wkakak,开始:

   1、 精确获取屏幕尺寸(例如:3.5、4.0、5.0寸屏幕) 

  

1  public static double getScreenPhysicalSize(Activity ctx) {
2         DisplayMetrics dm = new DisplayMetrics();
3         ctx.getWindowManager().getDefaultDisplay().getMetrics(dm);
4         double diagonalPixels = Math.sqrt(Math.pow(dm.widthPixels, 2) + Math.pow(dm.heightPixels, 2));
5         return diagonalPixels / (160 * dm.density);
6     }

一般小于7寸的,都是非平板,属于正常智能机系列

  2、 判断是否是平板(官方用法)

  

public static boolean isTablet(Context context) {return (context.getResources().getConfiguration().screenLayout & Configuration.SCREENLAYOUT_SIZE_MASK) >= Configuration.SCREENLAYOUT_SIZE_L         ARGE;}

3、 文字根据状态更改颜色 android:textColor 

  

<selector xmlns:android="http://schemas.android.com/apk/res/android"><item android:color="#53c1bd" android:state_selected="true"/><item android:color="#53c1bd" android:state_focused="true"/><item android:color="#53c1bd" android:state_pressed="true"/><item android:color="#777777"/>
</selector>

放在工程 res/color/目录下

4、背景色根据状态更改颜色 android:backgroup

     

 1 <selector xmlns:android="http://schemas.android.com/apk/res/android">
 2 
 3     <item android:state_selected="true"><shape>
 4             <gradient android:angle="0" android:centerColor="#00a59f" android:endColor="#00a59f" android:startColor="#00a59f" />
 5         </shape></item>
 6     <item android:state_focused="true"><shape>
 7             <gradient android:angle="0" android:centerColor="#00a59f" android:endColor="#00a59f" android:startColor="#00a59f" />
 8         </shape></item>
 9     <item android:state_pressed="true"><shape>
10             <gradient android:angle="0" android:centerColor="#00a59f" android:endColor="#00a59f" android:startColor="#00a59f" />
11         </shape></item>
12     <item><shape>
13             <gradient android:angle="0" android:centerColor="#00ff00" android:endColor="00ff00" android:startColor="00ff00" />
14         </shape></item>
15 
16 </selector>

  如果直接给背景色color会报错。

5、 启动APK的默认Activity

 1 public static void startApkActivity(final Context ctx, String packageName) {
 2         PackageManager pm = ctx.getPackageManager();
 3         PackageInfo pi;
 4         try {
 5             pi = pm.getPackageInfo(packageName, 0);
 6             Intent intent = new Intent(Intent.ACTION_MAIN, null);
 7             intent.addCategory(Intent.CATEGORY_LAUNCHER);
 8             intent.setPackage(pi.packageName);
 9 
10             List<ResolveInfo> apps = pm.queryIntentActivities(intent, 0);
11 
12             ResolveInfo ri = apps.iterator().next();
13             if (ri != null) {
14                 String className = ri.activityInfo.name;
15                 intent.setComponent(new ComponentName(packageName, className));
16                 ctx.startActivity(intent);
17             }
18         } catch (NameNotFoundException e) {
19             Log.e("startActivity", e);
20         }
21     }

7、计算字宽

  

1  public static float GetTextWidth(String text, float Size) {
2         TextPaint FontPaint = new TextPaint();
3         FontPaint.setTextSize(Size);
4         return FontPaint.measureText(text);
5     }

8、获取应用程序下所有Activity 

  

1  public static ArrayList<String> getActivities(Context ctx) {
2       ArrayList<String> result = new ArrayList<String>();
3       Intent intent = new Intent(Intent.ACTION_MAIN, null);
4       intent.setPackage(ctx.getPackageName());
5       for (ResolveInfo info : ctx.getPackageManager().queryIntentActivities(intent, 0)) {
6           result.add(info.activityInfo.name);
7       }
8       return result;
9   }

9、检测字符串中是否包含汉字

  

public static boolean checkChinese(String sequence) {final String format = "[\\u4E00-\\u9FA5\\uF900-\\uFA2D]";boolean result = false;Pattern pattern = Pattern.compile(format);Matcher matcher = pattern.matcher(sequence);result = matcher.find();return result;}

检测字符串中只能包含:中文、数字、下划线(_)、横线(-)

 public static boolean checkNickname(String sequence) {
        final String format = "[^\\u4E00-\\u9FA5\\uF900-\\uFA2D\\w-_]";
        Pattern pattern = Pattern.compile(format);
        Matcher matcher = pattern.matcher(sequence);
        return !matcher.find();
    } 

10、检查有没有应用程序来接受处理你发出的intent

1  public static boolean isIntentAvailable(Context context, String action) {
2         final PackageManager packageManager = context.getPackageManager();
3         final Intent intent = new Intent(action);
4         List<ResolveInfo> list = packageManager.queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY);
5         return list.size() > 0;
6     }

参考:http://www.cnblogs.com/over140/archive/2013/03/05/2706068.html

相关文章:

centos vnc配置笔记

1.首先查询是否安装VNC Serverrpm -qa |grep vnc如果有类似于&#xff1a;vnc-server-的值返回说明已经安装了vnc-server如果没有安装采用yum安装yum -y install vnc2.配置VNC用户如果以root登录的话&#xff0c;输入vncpasswd Password:Verify:设置root用户的VNC登录用户名和密…

普通大学生和大厂的距离有多长?

随着夏季的离去&#xff0c;金九银十招聘季已经悄然而至&#xff0c;现在正处于大厂招聘高峰期&#xff0c;是找工作的好时机。对于程序员这个行业来说&#xff0c;进大厂意味着高工资、高福利以及巨大的晋升空间&#xff0c;这是普通公司无法提供的&#xff0c;因此&#xff0…

ovirt官方安装文档 附录F

附录F&#xff1a;在单独的机器上安装Websocket代理 websocket代理允许用户通过noVNC和SPICE HTML5控制台连接到虚拟机。noVNC客户端使用websocket传递VNC数据。但是&#xff0c;QEMU中的VNC服务器不提供websocket支持&#xff0c;因此必须在客户端和VNC服务器之间放置一个webs…

CentOS重启启动Apache,VNC

centos 重启 apache #service httpd restart 重启 VNC #service vncserver restart 重启mysql # /etc/init.d/mysqld start 重启nginx #/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

调侃 -- 刚入职时的单纯

借个漫画调侃下刚入职时傻傻的想法当然也不是说排斥加班&#xff0c;既然选择了这个行业&#xff0c;也做好了加班的准备还好现在的公司不怎么加班&#xff0c;相比某些企业简直不能算是加班对于哪些上班好几年的老员工&#xff0c;下班后仍能坚持在工位上做下去&#xff0c;我…

AI市场扩大催生多样化标注需求

爱数智慧创始人兼CEO张晴晴在服贸会论坛上做主题分享 9月3日&#xff0c;由中国信通院云计算与大数据研究所&#xff0c;亚太工程组织联合会主办的《2021中国智能产业论坛》在2021服贸会上成功举办&#xff0c;论坛现场&#xff0c;北京爱数智慧创始人兼CEO张晴晴做《多模态标…

五、DNS与bind

DNS服务可以为用户提供域名和IP之间的自动转换。通过DNS&#xff0c;用户只需输入机器的域名即可访问相关的服务&#xff0c;而无需使用那些难以记忆的IP地址。DNS帮助用户在互联网上寻找路径&#xff0c;在互联网上的每一个计算机都拥有一个唯一的地址&#xff0c;称作IP地址。…

Nutch 二次开发之parse正文内容

关于nutch的基础知识能够參考lemo的专栏 nutch支持二次开发&#xff0c;为了满足搜索的准确率的问题&#xff0c;考虑只将网页正文的内容提取出来作为索引的内容&#xff0c;相应的是parse_text的数据。我使用的事nutch1.4 版本号&#xff0c;在cygwin下运行crawl命令进行爬取。…

翼方健数曹华:构建数据和计算互联网的必由之路

智能时代&#xff0c;数据无疑是最活跃的生产要素&#xff0c;它将决定未来的生产力和生产关系。其中&#xff0c;共享和保护数据&#xff0c;促进数据流通&#xff0c;并最大化数据价值是业内技术发展所关注的焦点。 诞生在这一背景下的隐私计算技术正在蓬勃发展&#xff0c;…

vi常用命令以及 冒号输入

按i进入输入模式 输入: 按ESC结束输入 按:w保存退出 pageup上翻页 pagedown下翻页 :w保存 :q!不保存 :wq保存离开 i o a编辑模式 ESC一般模式 dd 删除光标所在整行 yy 复制光标所在整行

Zabbix(六):项目实战之--自动发现nginx调度器及后端web服务集群、自定义参数监控...

项目&#xff1a; 1.自动发现nginx调度器及后端apache构建的web服务集群&#xff1b; 2.使用自定义参数监控调度器上nginx服务的相关统计数据及速率数据&#xff1b; 3.使用自定义参数监控后端apache服务的相关统计数据及速率数据&#xff1b;(选做) 4.制定出nginx调度器及后端…

ONNX 浅析:如何加速深度学习算法工程化?

AlphaGo击败围棋世界冠军李世石以来&#xff0c;关于人工智能和深度学习的研究呈现井喷之势。各种新的算法和网络模型层出不穷&#xff0c;令人眼花缭乱。与之相随的&#xff0c;深度学习的训练和推理框架也在不断的推陈出新&#xff0c;比较著名的有&#xff1a;微软的CNTK、G…

如何在OS X中打印到PDF文件

如何在OS X中打印文件到PDF文件&#xff1f;其实不需要安装任何其他软件&#xff0c;OS X本身支持打印到PDF文件这个功能。具体操作详见下面文章&#xff1a;Want to save a document or web page as a PDF file, but you don’t own Adobe Acrobat? No problem, you can prin…

Joomla和Drupal简介

Joomla!是一套在国外相当知名的内容管理系统。Joomla!是使用PHP语言加上MySQL数据库所开发的软件系统&#xff0c;可以在Linux、 Windows、MacOSX等各种不同的平台上执行。目前是由Open Source Matters&#xff08;见扩展阅读&#xff09;这个开放源码组织进行开发与支持&#…

AD RMS高可用(三)部署RMS根群集服务器

1) 在rms服务器上点击“添加角色和功能”&#xff0c;开始rms组件的添加 2) 选择“基于角色或基于功能安装”&#xff0c;点击”下一步“。 3) 选择第一台rms服务&#xff0c;点击”下一步“。 4) 勾选”ADRMS”角色&#xff0c;同时会添加iis服务。点击”下一步“。 5) 保持默…

AI 复活「她」! GPT-3 帮美国小哥复刻逝去未婚妻,但又夺走她……

整理 | 禾木木 出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09; 今年 7 月&#xff0c;一名33岁的美国小哥 Joshua Barbeau 在未婚妻去世后&#xff0c;根据她在 Facebook 和 twitter 上的文本在另一名开发人员的帮助下成功在 GPT-3 上微调&#xff0c;能够复刻出未…

centOS怎样强制卸载PHP以及自定义安装PHP

这个是原创的&#xff0c;当然也是在前人的基础上&#xff0c;自己留个拷贝&#xff0c;其他人也不用再摸索了。 转载请保留版权信息谢谢&#xff1a;http://blog.csdn.net/21aspnet/ 很无语&#xff0c;centOS居然php版本才5.1.6&#xff0c;很多开源的CMS无法安装。 查看ph…

深入掌握JMS(一):JMS基础

2019独角兽企业重金招聘Python工程师标准>>> 1. JMS基本概念 JMS(Java Message Service) 即Java消息服务。它提供标准的产生、发送、接收消息的接口简化企业 应用的开发。它支持两种消息通信模型&#xff1a;点到点&#xff08;point-to-point&#xff09;&a…

浏览器前进后退对下拉框数据的丢失(省市联动实现和例子)

浏览器前进后退对下拉框数据的丢失的问题&#xff0c;典型的为省市下拉框联动时城市数据的丢失。省市联动一般的实现为城市在省份的选择后js加载。 那么每次城市的改变只需要重新加载新的城市数据并更新下拉框即可&#xff1a; 下拉函数 function ReloadCities() { var $ddlCit…

Linux(centOS)手动安装Apache+MySQL+PHP+Memcached+Nginx原创无错版

最后更新时间&#xff1a;2012.3.21 第一步&#xff1a;Apache安装(已更新到2.2.22) 下载 去 http://www.apache.org 自己找新的 http://httpd.apache.org/ 国内有很多镜像点例如"人人"和"163" http://labs.renren.com/ 注意要找httpd&#xff0c;因为a…

首届“陇剑杯”网络安全大赛线上赛圆满结束

9月14日&#xff0c;集结了各行业领域3020支战队、11135名网络安全精英的首届“陇剑杯”网络安全大赛线上赛圆满结束&#xff0c;成功拉开将于9月25日在甘肃兰州新区举行的总决赛战幕。届时&#xff0c;涵盖网络配置、数据分析和漏洞修复等真实数字化业务场景的网络防御赛道和R…

与流氓软件的一次艰苦“奋战”

不知道大家有么有过这样的经历&#xff0c;英语不好&#xff0c;但有些时候找东西&#xff0c;还只有英文网站上有&#xff0c;但英文网站上下载东西&#xff0c;有时候不小心就会下错&#xff0c;稍有不慎&#xff0c;电脑就中标了&#xff1b;这不我昨天就遇到了&#xff0c;…

mysql5.6基于GTID主从复制设置

1.主库和从库都必须要开启binlog2.主库和从库server-id不相同3.建立主从辅助用户grant replication slave on . to rep192.168.200.% identified by oldboy;[mysqld]server-id1log-binmysql.binbinlog_formatrowgtid_modeONenforce_gtid_consistencylog_slave_updatesrelay_log…

Python 解一道江苏 小升初 数学题,如此变态,看不起来谁?

作者&#xff1a;小小明【江湖人称"明佬"】链接&#xff1a;blog.csdn.net/as604049322/article/details/118388505注明&#xff1a;本文经过作者小小明授权发布&#xff0c;可戳原文链接关注原文作者&#xff01;本文简介大家好&#xff0c;我是黄同学????前段时…

利用负载均衡优化和加速HTTP应用

1.负载均衡技术简介 现代企业信息化应用越来越多的采用B/S应用架构来承载企业的关键业务&#xff0c;因此&#xff0c;确保这些任务的可靠运行就变得日益重要。随着越来越多的企业实施数据集中&#xff0c;应用的扩展性、安全性和可靠性也越来越受到企业的重视。 负载均衡技术通…

查看sqlserver被锁的表以及如何解锁

查看sqlserver被锁的表以及如何解锁查看被锁表&#xff1a;www.2cto.com select request_session_id spid,OBJECT_NAME(resource_associated_entity_id) tableName from sys.dm_tran_locks where resource_typeOBJECTspid 锁表进程 tableName 被锁表名解锁&#x…

Centos 6.4下MySQL备份及还原详情介绍

我们前面文中中介绍了centos 6.4下MySQL的安装及配置&#xff0c;安装后为了保证数据的安全性所以我们同样也要学会备份及还原&#xff0c;备份及还原操作在我们的真实工作环境中是必不可少的&#xff0c;由于是对数据库数据备份&#xff0c;所以今天我们就随之介绍一下&#x…

iPhone 13 终于等到了!降价、新颜色、电池续航性能大提升

整理 | 禾木木、苏宓 出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09; 它来了&#xff0c;真的来了&#xff01; 不知有多少朋友守在今日凌晨观看一年一度的科技春晚——苹果发布会&#xff01; 还是那个熟悉的样子&#xff0c;从加利福尼亚的沙漠中向我们走来&am…

“httpd未被被识别的服务”的解决办法

使用自动编译安装会出现这个问题&#xff0c;也就是输入 #service httpd restart 给出这样的提示&#xff1b;这时候要重启可以 #/usr/local/apache2/bin/apachectl start 如果你希望使用 #service httpd restart 那么需要按下面的做法 注意的是daemon /usr/local/apache…

安装sql 2005 闪退 连接到服务器失败。错误:0x80070424

可以尝试安装.net4.0 我是通过此办法解决。 本文转自 freeterman 51CTO博客&#xff0c;原文链接&#xff1a;http://blog.51cto.com/myunix/1751338&#xff0c;如需转载请自行联系原作者