关闭

在应用里面获取系统字体大小

288人阅读 评论(0) 收藏 举报
分类:


设置里面 获取字体大小

  1. public static float getFontSize() {  
  2.         Configuration mCurConfig = new Configuration();  
  3.         try {  
  4.             mCurConfig.updateFrom(ActivityManLagerNative.getDefault().getConfiguration());  
  5.         } catch (RemoteException e) {  
  6.             Log.w(TAG, "Unable to retrieve font size");  
  7.         }  
  8.   
  9.         Log.w(TAG, "getFontSize(), Font size is " + mCurConfig.fontScale);  
  10.         return mCurConfig.fontScale;  
  11.   
  12.     } 

其他应用,比如 Launcher2, 因为 设置里面是ActivityManagerNative.getDefault()获得隐藏接口 IActivityManager的实例, 这里不可以直接使用,导入包android.app.ActivityManagerNative 也是不行的,因为没有这个包;

那怎么办呢? 其实很简单, 这样就可以了·


    public static float getFontSize() {  
        Configuration mCurConfig = new Configuration();   
        Log.w(TAG, "getFontSize(), Font size is " + mCurConfig.fontScale);  
        return mCurConfig.fontScale;  
 
    } 

但是 这样能获取系统字体大小, 想要修改更新系统字体 就需要 mCurConfig.updateFrom(ActivityManLagerNative.getDefault().getConfiguration()); 

那就必须能引用隐藏接口 IActivityManager 是 属于@hide API

关键是 Android.mk  里添加LOCAL_SDK_VERSION := current 后就不能使用 @hide API·


在应用里面ndroid.mk 去掉这句就可以了哦!


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:11407次
    • 积分:181
    • 等级:
    • 排名:千里之外
    • 原创:6篇
    • 转载:4篇
    • 译文:0篇
    • 评论:1条
    文章存档
    最新评论