zoukankan      html  css  js  c++  java
  • Android零散知识点积累

    本文仅在记录android开发中遇到的零散知识点,会不断更新...

    目录

    1、隐藏系统标题栏
    2、图片尺寸及屏幕密度 
    3、获取顶部状态栏高度

     

    1、隐藏系统标题栏

    1)在资源文件styles.xml中定义样式,继承系统Holo.Light主题

    1 <!-- Base application theme. -->
    2 <style name="NoTitleBar" parent="android:Theme.Holo.Light.NoActionBar">
    3     <!-- Customize your theme here. -->
    4 </style>

    在第三行可以加入自定义样式,修改系统默认样式。

    2)AndroidManifest.xml给应用指定无标题样式

    <application
            android:allowBackup="true"
            android:icon="@drawable/ic_launcher"
            android:label="@string/app_name"
            android:theme="@style/NoTitleBar" >
        <!-- activity 列表 -->
    </application>

    附带系统支持的主题列表(从谦虚的天下那里拿的图,参考):

    2、图片尺寸及屏幕密度

    2.1 屏幕密度

    根据像素分辨率,在屏幕指定物理宽高范围内能显示的像素数量。
    在同样的宽高区域,低密度的显示屏能显示的像素较少,而高密度的显示屏则能显示更多的像素。
    屏幕密度非常重要,因为其它条件不变的情况下,一共宽高固定的UI组件(比如一个按钮)在在低密度的显示屏上显得很大, 而在高密度显示屏上看起来就很小。
    为简单起见,Android把所有的屏幕分辨率也分为四种尺寸:小,普通,大,超大(分别对应:small, normal, large, and extra large).
    应用程序可以为这四种尺寸分别提供不同的资源-平台将透明的对资源进行缩放以适配指定的屏幕分辨率。

    2.2 不同平台尺寸

    四种屏幕尺寸分类:: small, normal, large, and xlarge
    四种密度分类: ldpi (low), mdpi (medium), hdpi (high), and xhdpi (extra high)
    需要注意的是: xhdpi是从  2.2 (API Level 8)才开始增加的分类.
    xlarge是从Android 2.3 (API Level 9)才开始增加的分类.
    DPI是“dot per inch”的缩写,每英寸像素数。

    一般情况下的普通屏幕:ldpi是120,mdpi是160,hdpi是240,xhdpi是320,对应不同的drawable图片资源文件夹。

    2.3 px、dpi及屏幕密度

    pixels = dips * (density / 160) 

    density:屏幕密度,即上文所说120、160等。

    3、获取顶部状态栏高度

    public static int getStatusBarHeight(Window window) {
        Rect frame = new Rect();
        window.getDecorView().getWindowVisibleDisplayFrame(frame);
        return frame.top;
    }
  • 相关阅读:
    [国家集训队]数颜色 / 维护队列
    [SP3267]DQUERY
    扩展欧几里得算法详解(exgcd)
    [CTSC2018]混合果汁
    极角排序那些事
    向量的点乘与叉乘学习笔记
    [APIO2014]序列分割
    CF1148D-Dirty Deeds Done Dirt Cheap
    CF176E Archaeology(set用法提示)
    【网络流24题】最长不下降子序列问题
  • 原文地址:https://www.cnblogs.com/FlyFive/p/4118335.html
Copyright © 2011-2022 走看看