有没有办法在xml
内指定属性是绝对必需的?类似于注释的东西......所以当用户使用自定义视图时,IDE
会通知他他错过了一个重要的属性。
目前我在运行时验证属性,如果错过了属性则抛出异常。我想知道是否还有另一种方法。
答案 0 :(得分:1)
我不确定<attr>
元素是否接受required
属性。但是,如果您的目标是提醒IDE中缺少必需属性的开发人员,则可以检查isInEditMode()
(doc reference)的值并提供详细的错误消息,该消息将显示在可视化编辑器中的示例。
实际上,您抛出的运行时异常也应该已经显示在IDE的可视化编辑器中 - 但是您可以使用isInEditMode()
来自定义错误消息。
诚然,这是一个远非完美的解决方案。有时使用可视化编辑器编辑自定义视图是不切实际的。有些情况下<declare-styleable>
用于非视觉目的。