• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >Android > Android 实用代码片段,

Android 实用代码片段,

作者:网友 字体:[增加 减小] 来源:互联网 时间:2017-05-26

网友通过本文主要向大家介绍了android 的代码提示,android 游戏源代码,android登录界面代码,第一行代码 android,android 代码混淆等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

Android 实用代码片段,


一些不常见确又很实用的代码块。

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

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

 

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

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

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>

4.背景色根据状态更改颜色 android:backgroup(如果直接给背景色color会报错)

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_selected="true">
    <
shape> <gradient android:angle="0" android:centerColor="#00a59f" android:endColor="#00a59f" android:startColor="#00a59f" /> </shape>
  </
item> <item android:state_focused="true">
    <
shape> <gradient android:angle="0" android:centerColor="#00a59f" android:endColor="#00a59f" android:startColor="#00a59f" />   </shape>
  </
item> <item android:state_pressed="true">
    <
shape> <gradient android:angle="0" android:centerColor="#00a59f" android:endColor="#00a59f" android:startColor="#00a59f" /> </shape>
  </
item> <item>
    <
shape> <gradient android:angle="0" android:centerColor="#00ff00" android:endColor="00ff00" android:startColor="00ff00" /> </shape>
  </
item> </selector>

5.启动APK的默认Activity

public static void startApkActivity(final Context ctx, String packageName) {
        PackageManager pm = ctx.getPackageManager();
        PackageInfo pi;
        try {
            pi = pm.getPackageInfo(packageName, 0);
            Intent intent = new Intent(Intent.ACTION_MAIN, null);
            intent.addCategory(Intent.CATEGORY_LAUNCHER);
            intent.setPackage(pi.packageName);

            List<ResolveInfo> apps = pm.queryIntentActivities(intent, 0);

            ResolveInfo ri = apps.iterator().next();
            if (ri != null) {
                String className = ri.activityInfo.name;
                intent.setComponent(new ComponentName(packageName, className));
                ctx.startActivity(intent);
            }
        } catch (NameNotFoundException e) {
            Log.e("startActivity", e);
        }
    }

6.计算字宽(注意如果设置了textStyle,还需要进一步设置TextPaint)

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

7.获取应用程序下所有Activity

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

8.检测字符串中是否包含汉字

 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;
    }

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

 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

  public static boolean isIntentAvailable(Context context, String action) {
        final PackageManager packageManager = cont



 
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • Android 实用代码片段,

相关文章

  • 2017-05-26关于视频编辑SDK的接入说明,视频编辑sdk接入
  • 2017-05-26订单流程view,订单view
  • 2017-05-26自定义图片轮播,简单就是好用,自定义图片轮播
  • 2017-05-26ViewPager和Fragment的组合使用,viewpagerfragment
  • 2017-05-26Google Play发布App中遇到&quot;多个APK:版本1未提供给任何设备配置使用。&quot;问题的解决方法,appapk
  • 2017-05-26Android--Dialog对话框
  • 2017-05-26Looper.prepare()和Looper.loop(),looper.prepare
  • 2017-05-26Android CursorAdapter的使用,cursoradapter使用
  • 2018-01-28TiemPicke 和 DatePicker控件 自定义大小
  • 2017-05-26android动画详解四 创建动画浅析

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • Android线程操作对象AsyncTask线程机制
    • Android常用学习网站,android
    • 自动匹配关键字并且标红,匹配关键字标红
    • TCP的三次握手,TCP三次握手
    • Android初级教程_获取Android控件的宽和高,初级教程android
    • androidj基础:从网上下载图片,
    • Android中使用findViewByMe提升组件查找效率,光伏组件转换效率
    • android开发使用组件心得
    • 8.1.1 Android中的13种Drawable小结 Part 1
    • 更简单更全的material design状态栏

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有