Android小笔记(3)

    xiaoxiao2021-03-25  92

    笔记1:

    IconFont在Android中的使用什么是iconFont iconFont顾名思义是字体图标,图标就藏在字体文件里面,看着是个图标,其实却是个文字,这就是所谓的icon font。 iconFont是矢量图标

     

    iconFont优缺点

    优点 1.由于IconFont是矢量图标,所以可以轻松解决图标适配问题 2.图标以字体文件的形式存在项目中(.ttf文件一般放在assets文件夹下),体积小可以减小APK的体积。 3.一套图标资源可以在不同平台使用(android ,ios,web)

     

     

    4.资源维护方便。

    缺点 1.需要自定义svg图片,并将其转换为ttf文件,图标制作成本比较高 2.添加图标是需要重新制作ttf文件 3.只能支持单色(不支持渐变色图标) 通过以上的利弊分析,IconFont还是很值得我们使用的,大家可能担心制作问题,但是我觉得没有必要,因为我们有阿里巴巴矢量图标库,基本的图标我们都可以找到,最重要的是阿里巴巴矢量图标库支持IconFont,所以我们这些开发者就不用担心制作的问题啦。IconFont在android端的使用 iconfont.ttf文件:

     

     

     

     

    //我这里的图标文件是iconfont.ttf(目录:assets/fonts/iconfont.ttf) TextView tv1=(TextView)findViewById(R.id.xxxx); Typeface typeface=Typeface.createFromAsset(getAssets(), "fonts/iconfont.ttf"); tv1.setTypeface(typeface); //设置图标(对应上面的点赞图标)(Unicode编码) tv1.setText("\ue600");

    使用FontLab studio 5查看iconfont.ttf文件:

    还可以在CSS中查看

    java代码中用到的是Unicode,前端代码用到的如下图所示:  格式。

     

    笔记2:

    我们点击Android Studio工程结构旁边的小齿轮,将红色部分那一串字符前的对勾去掉,可以兼容空的中间包名,您的项目会发生变化。

     

     

    笔记3:

    Android Studio运行工程时出现“some file crunching failed”。

    解决办法:

    在主工程文件夹下的build点gradle文件里,加两句:

    aaptOptions点cruncherEnabled = false aaptOptions点useNewCruncher = false

    例如:

    Android { compileSdkVersion 22 buildToolsVersion "23.0.1" aaptOptions.cruncherEnabled = false aaptOptions.useNewCruncher = false defaultConfig { minSdkVersion 5 targetSdkVersion 17 }

    然后重新构建、运行

     

     

     

     

    笔记4:

    Android Studio主项目的layout布局名称不能和Library中layout布局名称一致。

     

    笔记5:

    如果在加入第三方SDK  尤其是有.so文件时控制台报错:

    java.lang.UnsatisfiedLinkError: Couldn't load     from loader dalvik.system.PathClassLoader

    考虑CPU平台性,将第三方提供的.so文件放置不同的文件夹尝试。arm64-v8a、armeabi、armeabi-v7a、x86、x86_64等

     

     

    笔记6:

    Error:Execution failed for task ':app:transformClassesWithDexForDebug'. > com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: com.android.dex.DexException: Multiple dex files define

    遇到这种报错尝试build.gradle文件中增加如下配置:

        defaultConfig {         multiDexEnabled true     }

     

    笔记7:

    子module模块下的应该 用这句话 consumerProguardFiles 'proguard-rules.pro'

     

     

    未完待续...

     

     

    转载请注明原文地址: https://ju.6miu.com/read-23345.html

    最新回复(0)