. > Android resource linking failed (AAPT2 27.0.3 Daemon #0) Command: C:\javasdk\build-tools\27.0.3...\aapt2.exe link -I\ C:\javasdk\platforms\android-26\android.jar\ --manifest\ C:\...:attr/fontVariationSettings not found....:attr/ttcIndex not found....然后最后:我先关掉了 Android Studio, 然后删掉了类似报错信息中的 C:\Users\Jalal D\.gradle\caches\transforms-1\files-1.1\...
--no-crunch -I C:\Users\JM\AppData\Local\Android\Sdk\platforms\android-26\android.jar -M \\?...\incremental\mergeDebugResources\merged.dir\values-v28\values-v28.xml:7: error: resource android:attr...\values-v28.xml:11: error: resource android:attr/dialogCornerRadius not found....\values.xml:956: error: resource android:attr/fontVariationSettings not found....\values.xml:957: error: resource android:attr/ttcIndex not found. error: failed linking references.
PorterDuff的由来: 相信大多数人看到这个ProterDuff单词很奇怪了吧,这肿么个意思呢,然后就用有道啊,金山啊开始翻译,但是翻译软件给出的结果肯定还是 ProterDuff或者”未找到”...我们可以通过xml中的属性android:backgroundTint和android:backgroundTintMode来设置,android:backgroundTintMode这个属性传的值就是刚刚上面那些...android:backgroundTint的话就是传color的值。 那么android:background和android:backgroundTint有什么区别呢?...如果设置了android:backgroundTint,那么就会将设置的颜色和原来的背景进行一个叠加的过程,至于如何叠加,就是上面的mode。...}; states[1] = new int[]{android.R.attr.state_enabled}; b.setBackgroundTintList(new ColorStateList
我们建议使用主题背景属性来间接引用资源,您可以在不同的模式下 (比如在 深色主题背景) 实现灵活地切换。...attr/colorError 显示错误时的颜色。 其他常用的颜色: ?attr/colorControlNormal 正常状态下设置给 icon/controls 的颜色; ?...android:attr/textColorPrimary 设置给文本的主要颜色; ?android:attr/textColorSecondary 设置给文本的次要颜色。 大小 ?...应用命名空间 vs Android 命名空间 您可能注意到有些属性的引用是通过 ?android:attr/foo 而有些只是通过 ?attr/bar。...优先使用非平台版本的属性,它们可以被所有级别的 API 使用 更多资源 为了获取可以使用的全部主题背景属性,请查阅以下信息: Android platform AppCompat Material
" format="float" /> attr name="remove_animation_duration" format="integer" /> attr.../> attr name="sort_enabled" format="boolean" /> attr name="remove_enabled" format=...attr name="drag_handle_id" format="integer" /> attr name="fling_handle_id" format="integer"..."false"] />android:drawable 放一个drawable资源android:state_pressed 是否按下,如一个按钮触摸或者点击。...应用程序是否在前台,当有通知栏被拉下来或者一个对话框弹出的时候应用程序就不在前台了-------android="http://schemas.android.com/
Attr的定义 我们先举一个框架中的源码例子,用来介绍下Android中是如何定义一个Attr的,比如以下创建一个简单的TextView布局 其中layout_width对应到框架中的attr信息如下...defStyleAttr和defStyleRes功能一样,指定的资源形式不同,前者表示一个默认的指向一个style风格的attr属性,而后者你可以直接传入一个style风格的id。...以上理论上是可行的,不过运行后,程序却出现奔溃,出现以下错误提示: java.lang.IllegalStateException: You need to use a Theme.AppCompat...android:textColorSecondary" android:text="?attr/dogName"/> 获得一个Attr的方法,不同于普通资源使用@符号获得的方式,而是需要使用?...此处的textColor使用当前主题的android:textColorSecondary属性内容。因为资源工具知道此处是一个属性,所以省去了attr (完整写法:?
使用注意点 在使用自定义View时有很多注意点(坑),希望大家要非常留意: 3.1 支持特殊属性 支持wrap_content 如果不在onMeasure()中对wrap_content作特殊处理...的控件,padding和margin会直接影响measure和layout过程 3.2 多线程应直接使用post方式 View的内部本身提供了post系列的方法,完全可以替代Handler的作用,使用起来更加方便...--格式有很多种,如资源id(reference)等等--> attr name="circle_color" format="color"/> 对于自定义属性类型 & 格式如下: 资源ID --> attr...总结 本文对自定义View的具体应用和注意点进行了全面分析 Carson带你学自定义View文章系列: Carson带你学Android:自定义View基础 Carson带你学Android:一文梳理自定义
3.1 支持特殊属性 支持wrap_content 如果不在onMeasure()中对wrap_content作特殊处理,那么wrap_content属性将失效 具体原因请看文章:为什么你的自定义...ViewGroup的控件,padding和margin会直接影响measure和layout过程 3.2 多线程应直接使用post方式 View的内部本身提供了post系列的方法,完全可以替代Handler...--格式有很多种,如资源id(reference)等等--> attr name="circle_color" format="color"/> 对于自定义属性类型 & 格式如下: 资源ID --> attr...情况下使用) mColor = a.getColor(R.styleable.CircleView_circle_color,Color.RED); // 解析后释放资源
然后请求数据,如果网络异常就显示网络异常的布局,数据异常、数据为空也有相应的布局,以及当我们请求成功完毕数据后,根据返回的数据值去区分不同VIP等级的用户显示不同的页面,这里我放了两张图,我的女神,迪丽热巴和俞飞鸿...attr name="esv_emptyView" format="reference" /> // 设置当前显示的 viewState attr...0; // 加载 View public static final int VIEW_LOADING = -1; // 数据异常( 数据异常指原本应该是有数据,但是服务器返回了错误的...setViewState(int state) { if (state < VIEW_TAG) { throw new RuntimeException("ViewState 不在目标范围...getStateView(int state) { if (state < VIEW_TAG) { throw new RuntimeException("ViewState 不在目标范围
@drawable/btn_check_on图片和@drawable/btn_check_off图片,在frameworks/base/core/res/res/drawable我们可以找到:...我们可以看到,其实就是根据不同的状态,为button属性赋值了不同的图片资源,这就是我们看到的效果。...然后分别调用了setButtonDrawable(d)和setChecked(checked)来对我们自定义的控件进行了设置。...= null) { parent.childDrawableStateChanged(this); } } drawableStateChanged这个方法不在执行View里面的这个方法...PFLAG_DRAWABLE_STATE_DIRTY; return mDrawableState; } } 下面调用到了onCreateDrawableState这个方法,这个方法也不在是执行
和RatingBar,可见这二者也是基于ProgressBar实现的。...android:attr/progressBarStyle" style="?android:attr/progressBarStyleHorizontal" style="?...android:attr/progressBarStyleInverse" style="?android:attr/progressBarStyleLarge" style="?...android:attr/progressBarStyleLargeInverse" style="?android:attr/progressBarStyleSmall" style="?...,(不了解的请先自行了解View的绘制原理,本篇博客的重点不在这里,就不详细说了,下面会给出测量的代码 2)拿到宽度以后,我们再通过getProgress()拿到进度,按比例控制绘制线的长短,这样就实现了
textAppearanceCaption 样式应用于小号文本,例如输入框的提示和错误信息 textAppearanceOverline 样式也应用于小号文本,但是它具有大写英文字母和更大的字符间距...△ Google Font (左) 和字型缩放生成器 (右) 字体样式资源 字体样式资源由字体和 TextAppearance 样式组成。...让我们来看看 Android 中可用的资源以及声明样式时的注意事项。 XML 和可下载字体 字体存放于 res/font 目录下,通过 @font/ 符号引用。...TextView 支持的属性和值一致: fontFamily 定义字族,通常使用 @font/ 资源引用 XML 或可下载字体 android:textSize 定义文本的大小,通常是一个 sp...-- Color --> android:textColor”>?attr/colorOnSurface <!
功能介绍 2.1 需求场景 对于 EditText来说,一般的需求有: 方便用户因出现输入错误而进行2次输入 标识用户正在填写项 根据具体场景增加一定的UI元素 2.2 功能需求 根据需求场景,得出EditText...功能详细设计 下面将给出详细的功能逻辑 4.1 一键清空输入字段 描述:将当前用户输入的字段清空 需求场景:方便用户因出现输入错误而进行2次输入 原型图 源码分析 /* * 步骤1:定义属性...根据资源ID获取图标资源(转化成Drawable对象) // 3....> android="http://schemas.android.com/apk/res/android" android:shape="rectangle" >...android:color="@color/lineColor_click" /> android:width="1dp" /> 5.
其实这是 VisualStudio 逗比的问题,尝试关闭 VisualStudio 然后干掉 Bin 和 Obj 文件夹,然后先开启安卓模拟器,然后重新构建就可以了。...\Xamarin.Android.Common.Debugging.targets(420,2): warning : 发生一个或多个错误。...那么基本都是 VisualStudio 的逗比问题,可以通过还原 NuGet 库和删除 Bin 和 Obj 文件夹或清理项目解决。...注意清理项目时不会完全删除 Obj 文件哦,我推荐先手动删除 Bin 和 Obj 文件夹,如果删除失败,那么先将项目代码复制到另一个文件夹就可以了 通过 Git 管理的代码,可以通过下面的代码快速清理...Bin 和 Obj 文件夹,这个方法的缺点是也许会将一些代码也清理掉,除非是熟悉 Git 的小伙伴,不然请不要模仿 git clean -xdf 此外,如果是 NuGet 没有还原成功,因为网络的原因,
功能介绍 2.1 需求场景 对于 EditText来说,一般的需求有: 方便用户因出现输入错误而进行2次输入 标识用户正在填写项 根据具体场景增加一定的UI元素 2.2 功能需求 根据需求场景,得出EditText...功能详细设计 下面将给出详细的功能逻辑 4.1 一键清空输入字段 描述:将当前用户输入的字段清空 需求场景:方便用户因出现输入错误而进行2次输入 原型图 ?...根据资源ID获取图标资源(转化成Drawable对象) // 3....> android="http://schemas.android.com/apk/res/android" android:shape="rectangle" >...android:color="@color/lineColor_click" /> android:width="1dp" /> ----
> attr name="text_size" format="float">attr> attr name="text_color" format="color">attr> attr name="text_back_ground" format="color|reference">...,其具体使用方法如下: 1. reference:参考某一资源ID。...(1)属性定义: attr name = "visible" /> attr name = "...四、总结: 注意该例子中是使用app:text_size = "20 和app:text_color="#00FF00定义TextView的颜色和textView的字体大小,而不是使用系统的属性android
> android=”http://schemas.android.com/apk/res/android” xmlns:toolbar=”http...********************************************************************* 好了,基本用法已经讲完了,现在来看看一些注意点和知识点吧。...该文件是定义属性名和格式的地方,需要用包围所有属性。...这里需要注意的是,如果使用的方法和获取值的类型不对的话,则会返回默认值。因此,如果一个属性是带两个及以上不用类型的属性,需要做多次判断,知道读取完毕后才能判断应该赋予何值。...当然,在取完值的时候别忘了回收资源哦! 自定义属性数据类型简介: 一、reference:参考指定Theme中资源ID。
attr和styleable的关系 首先要明确一点,attr不依赖于styleable,styleable只是为了方便attr的使用。...--指定一些属性--> 首先android:textViewStyle其实就是一个普通的在资源文件中定义的属性attr,它的format="reference"。...下载地址-GitHub attr资源文件中如下定义: //定义属性 attr name="custom_color1...会自动去将ResId对应的string从资源文件中读出来。...都可以设置成0表示不去搜索可配置的风格和默认风格。
最近在模仿今日头条,发现它的很多属性都是通过自定义控件并设定相关的配置属性进行配置,于是便查询了解了下declare-styleable,下面我把自己的使用感受和如何使用进行说明下。...从源码那边我们大体知道了一个控件的属性配置和初始化流程,下面就让我们按照这个思路去自己学习下如何自定义配置。...1.首先,先写attrs.xml 在res-vlaues文件夹下创建资源文件attrs.xml或则自定义一个资源文件xx.xml,都可以。...11. reference|color:颜色的资源文件。...12. reference|boolean:布尔值的资源文件 注意://由于reference是从资源文件中获取:所以在XML文件中写这个属性的时候必须 personattr:name=“@string
那么在日常的测试活动中,移动应用的质量保障就成为了各个测试团队的主要课题,面对高速迭代的功能、日益缩短的项目周期、逐渐庞大的人力与资源投入,以上的这些因素都会让测试团队不得不在项目中加入自动化测试策略。...3.本文是使用Python语言配合Appium进行讲解,其他语言相关教程不在此做赘述。...当然使用了断言不单单会使我们的测试用例变得完整,而且它可以帮助我们快速发现代码中的错误和问题,尤其在自动化测试中。它们可以验证函数的返回值、对象的属性、数据结构的状态以及其他各种条件。...5.1 assertEqual 出镜率极高的一个断言方式,和assertTrue差不多的节奏。它表示“断言相等”。...self.assertIsNotNone(term_element, "期限元素未找到。")
领取专属 10元无门槛券
手把手带您无忧上云