问题标签 [android-custom-attributes]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
177 浏览

android-studio - 从自定义组件调用 Typeface.createFromAsset 会导致 AndroidStudio 中出现 npe

由于无法在 xml 中指定自定义字体,我想继承所有组件并在fontType那里添加新参数。例如,如果我想要一个带有自定义字体的按钮,它看起来像这样:

活动.xml

attr.xml

按钮.java

好吧,这东西在模拟器/真正的 Android 设备中完美运行。但是 android studio (2.1.2.0-1) 的预览会抛出 NPE。我可以继续忍受痛苦并测试设备中的所有内容,但如果没有 AndroidStudio 预览版,它会使开发变得非常缓慢。

在此处输入图像描述

这是 AndroidStudio 错误,还是我应该打电话给createFromAsset其他地方?就像这个话题中所说的那样

有什么想法吗?

此致,

0 投票
1 回答
1277 浏览

java - 如何获取枚举自定义属性的所有可能值?

假设我的my_custom_enum视图有一个自定义属性:

有没有办法在代码中获取这个枚举的所有可能值?

换句话说:

我想有一种方法来获取值7512222和。 这些值也很好,但不是强制性的。12414names

0 投票
0 回答
217 浏览

android - 自定义视图属性如何检查它是选择器还是可绘制

我的自定义视图属性之一是:

我需要检查它是选择器还是直接图标可绘制。

传递选择器:

或传递可绘制的图标:

在自定义视图构造函数中:

现在我需要知道是mIconSrc一个选择器或图标drawable。

0 投票
1 回答
235 浏览

android - 无法在当前主题中使用 defStyleAttr 为自定义视图找到样式

我有一个自定义视图,它也使用自己的defStyleAttrie

当前主题中的一个属性,其中包含对样式资源的引用,该样式资源为视图提供默认值。

在布局文件中声明此视图并单击 Android Studio 2.2.3 中的预览时,我收到以下错误消息:

缺少样式。是否为此布局选择了正确的主题?使用布局上方的主题组合框选择不同的布局,或修复主题样式引用。在当前主题中找不到样式“myCustomStyleAttr”

我的视图构造函数是:

我知道关于缺少样式的 SO 有很多问题。错误但是没有一个答案对我有用,它们主要与 AppCompat 样式有关,所以我想分享我的解决方案。

0 投票
4 回答
1088 浏览

android - 使用自定义 XML 标记和数据绑定构建不成功的 Gradle

当我尝试使用数据绑定和绑定布局中的自定义 XML 标记运行项目时,出现以下构建错误:

布局:

View Model 具有以下 Binding 适配器:

创建 ViewHolder 并进行绑定的代码如下:

构建错误:

com.android.jack.ir.JNodeInternalError: java.lang.Exception: java.lang.RuntimeException: 失败,详情请查看日志。无法生成视图活页夹 java.lang.IllegalArgumentException: element public default java.util.stream.IntStream codePoints() 不是包含类型 java.lang.String 的成员,也不是 com.android.jack.eclipse 的任何超类。 jdt.internal.compiler.apt.model.TypesImpl.asMemberOf(TypesImpl.java:129) 在 android.databinding.tool.reflection.annotation.AnnotationMethod.(AnnotationMethod.java:49) 在 android.databinding.tool.reflection.annotation .AnnotationClass.getDeclaredMethods(AnnotationClass.java:314) 在 android.databinding.tool.reflection.ModelClass.getAbstractMethods(ModelClass.java:401) 在 android.databinding.tool.expr.MethodBaseExpr.resolveListenersAsMethodReference(MethodBaseExpr.

在 Gradle 文件中启用了数据绑定。

如果我将这个功能移动到一个单独的干净项目中并像这样绑定数据:

自定义 XML 属性按预期工作并且构建成功。

您有什么想法可能是构建错误的原因吗?

0 投票
1 回答
1197 浏览

android - 使用customview android在文本和下划线之间留出空间

我想在 OPTING 下加下划线

我想要下面的 OPTING 下划线,但是当我创建这将在 customview 的帮助下,下划线出现在 opting 下方,但我希望文本和行之间有一些空间,如图像

我创建了一个自定义视图,如果找到一个单词,将在其中搜索一个字符串,然后相应的文本将加下划线,但我唯一想要的是在下划线和文本之间留出一些空间,

我的课如下,

}

attrs.xml 如下,

示例布局如下,

我是customview的初学者,我在stackoverflow上的一些答案的帮助下创建了这个。请不要建议任何其他方式来做到这一点。

任何帮助将不胜感激。

0 投票
1 回答
6139 浏览

android - 以编程方式更改 ConstraintLayout 子级的边距和大小

我正在编写一个自定义视图,以便能够使用自定义 XML 属性来根据这些属性设置视图的边距和大小,一切正常,直到我到达 ConstraintLayout 的子级获取由自定义值确定的边距和大小的部分。边距没有任何区别,视图保持在其父 ConstraintLayout 的左上角。可能是什么问题呢?(图像距离屏幕边界 500PXs)

结果:

在此处输入图像描述

0 投票
1 回答
1021 浏览

android - 如何为自定义 RecyclerView.LayoutManager 实现的 LayoutParams 类定义自定义属性?

我知道如何为特定类创建自定义属性。您只需使用名称的类名称在 Styleable 中定义它们,就像这样。

MyCustomView然后,当我在布局中使用实例时customAttr1customAttr2可以进行设置。很容易。

我现在要做的是LayoutParams在我的 custom 的子级上使用自定义属性,或者更准确地说,在提供我正在使用RecyclerView的各个子类的布局文件的根视图中。RecyclerView.ViewHolder但是,我无法获得传递给我的属性,我不确定为什么不。

这是我的 attrs.xml 文件...

这是我的自定义 LayoutParams 类中读取属性的代码...

这就是我在我的一个 ViewHolders 的布局中设置它的地方......

然而,我尝试的任何东西似乎都没有进入“hasValue”调用。它总是像未设置一样返回。

注意:我在定义属性时也尝试了所有这些......

...但似乎没有一个工作。

那么我做错了什么?您如何定义特定于您的自定义LayoutParams类的属性?

0 投票
1 回答
159 浏览

android - android studio 结构搜索并用正则表达式替换搜索模板

我想为所需的 xml 自定义属性实现机制 - 与 layout_width/layout_height 完全相同,但用于自定义属性。

可能的解决方案是在检查中添加结构搜索,但我无法让它搜索没有特定属性的 xml,因此在将文本替换为具有所需属性的新文本后,仍然显示错误。

我可以用正则表达式搜索模板吗?还有其他更好的解决方案吗?

谢谢

0 投票
1 回答
843 浏览

android - android在styles.xml中设置自定义属性并进入程序

我正在尝试使用styles.xml 中定义的自定义属性来获取按钮自定义属性以返回真/假。我的例子很简单,只有两个按钮,但我无法让它工作。我的布局看起来像:

样式.xml 看起来像:

代码如下:

一切编译正常,按钮颜色正常,我没有收到任何警告。但是 onClick 方法中的布尔值 isRed 总是返回 false。

我整天都在浏览网络和文档,这看起来应该可以工作——但事实并非如此。我究竟做错了什么?
谢谢
史蒂夫·S。

********* 编辑 2018 年 9 月 21 日星期五 10:17:01 PDT *********
如下所述,这是一个应用程序的原型,在网格视图中有大约 250 个不同的按钮。基本上有 4 种不同类型的大约 250 种,我可以使用 4 种不同样式中的一种来设置每个按钮中的几乎所有内容。我已经在使用标签和文本字段,并且确实需要一种方法来检测按钮的类型 (1 0f 4)。我终于用它自己的属性集创建了一个自定义按钮视图。工作原型自定义视图按钮的代码及其在github上的属性。谢谢!
史蒂夫·S。