自定义属性值超过24个怎么解决,自定义属性

2023-10-17 1223阅读

今天给各位分享自定义属性的知识,其中也会对自定义属性值超过24个怎么解决进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!自定义XML属性的作用在于,在采取自定义的控件时,很多时候,系统的一般XML属性已经不能满足需求,比如我们在做一个具有描边效果的TextView时,就需要有额外定义的TextView外边框颜色和TextView内部颜色两种颜色。这时候,使用自定义XML属性,用户就可以很方便地在XML中配置额外的属性。– 自定义的属性名称 和对应的单位 —。注意,自定义的XML属性必须给自定义的控件使用。css自定义属性分为全局定义属性和局部定义属性。

今天给各位分享自定义属性的知识,其中也会对自定义属性值超过24个怎么解决进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

自定义属性值超过24个怎么解决,自定义属性
(图片来源网络,侵删)

为您整合互联网精准答案:

1、如何使用自定义的XML属性

2、css规则定义属性

3、如何设置HTML自定义属性

4、JAVA的类中如何自定义属性

5、如何使用自定义属性

如何使用自定义的XML属性

一. 什么是自定义XML属性

在我们使用自定义的控件时,很多时候都需要定义一些不同于一般的XML属性前缀(如android:layout_width)的属性,比如这样 app:textColor,这些就是自定义控件需要用到的自定义控件属性。

二. 自定义XML属性有什么用

自定义XML属性的作用在于,在采取自定义的控件时,很多时候,系统的一般XML属性已经不能满足需求,比如我们在做一个具有描边效果的TextView时,就需要有额外定义的TextView外边框颜色和TextView内部颜色两种颜色。这时候,使用自定义XML属性,用户就可以很方便地在XML中配置额外的属性。

三. 怎么使用自定义XML属性

1.定义对应的属性

在values文件夹下新建一个attar_custom.xml文件:

?xml version=\”1.0\” encoding=\”utf-8\”?

resources

!– 自定义控件的名称 —

declare-styleable name=\”StrokeTextView\”

!– 自定义的属性名称 和对应的单位 —

attr name=\”outerColor\” format=\”color|reference\” /

attr name=\”innnerColor\” format=\”color|reference\” /

/declare-styleable

/resources

2.在XML中定义自定义属性

RelativeLayout xmlns:android=\”\”

xmlns:tools=\”\”

span style=\”color:#ff0000;\”xmlns:app=\”\”/span

android:layout_width=\”match_parent\”

android:layout_height=\”match_parent\”

span style=\”color:#ff0000;\”com.example.demo.StrokeTextView/span

android:layout_width=\”wrap_content\”

android:layout_height=\”wrap_content\”

android:text=\”@string/hello_world\”

android:textSize=\”28sp\”

span style=\”color:#ff0000;\”app:outerColor=\”#000000\”

app:innnerColor=\”#ffffff\”/span

android:layout_centerInParent=\”true\”/

/RelativeLayout

注意,自定义的XML属性必须给自定义的控件使用。

css规则定义属性

css自定义属性

css自定义属性分为全局定义属性和局部定义属性。

一:全局

1.定义:

:root{//此处的root是固定的。

–them-color:blue;//自定义属性时以–开头,告诉浏览器这是自定义的。

}

2.使用:

style type=\”text/css\”

.div{

background-color:var(–them-color);

//如果自定义的属性出不来或其他问题,可在之后写属性值。例如:background-color:var(–them-color,blue);

也可写另一个属性名:background-color:var(–them-color,var(–them-color1));

}

/style

div class=\”94a8-b0b0-0b32-b2b4 div\”111/div

二:局部

1:定义

.foo{

–them-color:yellow;

}

.div{

color:var(–them-color);

}

2:使用:

div class=\”b0b0-0b32-b2b4-fd69 foo div\”121321/div//此处的foo相当于一个基类,目的是存取所有的属性值,他的子元素从这个库里取属性。

例子:

style type=\”text/css\”

.foo{

–them:yellow;

–width-outer:800px;

–height-outer:400px;

–width-inner:100px;

–height-inner:100px;

–bg-inner1:red;

–bg-inner2:orange;

–bg-inner3:purple;

}

.div{

width: var(–width-outer);

height: var(–height-outer);

border:1px solid var(–them);

margin: 20px auto;

}

.foo div:nth-child(1){

width: var(–width-inner);

height: var(–height-inner);

background-color: var(–bg-inner1);

}

.foo div:nth-child(2){

width: var(–width-inner);

height: var(–height-inner);

background-color: var(–bg-inner2);

}

.foo div:nth-child(3){

width: var(–width-inner);

height: var(–height-inner);

background-color: var(–bg-inner3);

}

/style

body

div class=\”0b32-b2b4-fd69-e47c div\”

div/div

div/div

div/div

/div

/body

四:总结

在一个组件里或者全局将经常使用的属性提取出来,比如主题色,用的时候直接使用变量。便于维护代码,改的时候直接改一处即可。

如何设置HTML自定义属性

首先在HTML元素中添加自定义属性,通过JavaScript进行访问,如果之前有尝试过,会发现,容易忽略标记验证,而HTML5可以为提供在有效的网页内创建并使用自己的元素属性的功能。

一,创建HTML5文件:

如果还没想好要使用哪一个,可以复制下面的代码:

在body中设置自定义元素,在head部分脚本区域利用JavaScript元素进行访问。

二,创建元素:

首先,添加一些简单的内容和自定义属性以及ID等元素,以便能够识别JavaScript示例。

正如所看到的那样,自定义属性的形式为:“data-*”,在“data-”部分设定名称或者选定的名称。在HTML5中使用自定义属性,这是唯一有效的方法。因此,如果想验证网页是否有效可才采用这种方法。

自定义属性允许以一种特殊的方式利用页面内的JavaScript代码来设置元素,例如,动画显示功能。如果没有标准的HTML元素,我们建议使用自定义属性。

三,添加测试按钮

在页面上利用自身的JavaScript元素即可执行事件,前提是将下面的代码添加到页面中:

四,获取属性:

在JavaScript中访问属性最常用的方法是使用“getAttributes”,这也是要做的第一步。在页面的head脚本区域添加以下函数:

这里,为示例增加了alert?值,当然也可以根据自身需求在脚本中添加。

五,获取数据:

可以使用元素数据集来替代DOM “getAttributes”,这或许更有效,尤其是在某种情况下,代码通过多种属性进行迭代,然而,浏览器对数据集的支持依然非常低,所以牢记这一点,此代码与//后面的方法一样可执行相同的进程。

从属性名称开始在数据集中删除“data-”,它仍然包含在HTML中。

请注意,如果你的自定义属性名称中有一个连字符,当通过数据访问时这会呈现出camel-case形式,即(“data-product-category” 变成“productCategory”)。

六,其他模块、函数

我们已经获取该属性,脚本仍然可以设置和删除。下面的代码演示了如何使用标准的JavaScript模块和数据集来设置属性。

JAVA的类中如何自定义属性

给你一个例子

class Example{

private int number1; //定义属性

public Example(){

//构造函数

}

}

java中不需要析构函数 他的内存交给虚拟机管理了

如何使用自定义属性

使用属性可以在设计时对类、properties和方法添加说明,然後在运行时通过反射资讯来检查它们。本文为我们介绍了在开发应用时如何利用C#自定义属性。 本文可以从技术文章下载出获得,其中包含了一个使用定制属性的Visual Studio专案示例档。

属性类是设计时可应用於类、properties和方法的特殊文类。属性类提供描述元素某些方面属性的方式或决定依附於该元素的其他类的行为,进而在运行时可以访问和检验这些描述与行为。你可以将属性类看作为类成员添加特殊修改器的一种方式。 例如,如果你曾经写过Web服务,那肯定知道要使得方法在整个服务中是公开的,必须要使用WebMethod属性。这是一个演示属性应用的很好的例子,因为我们要用WebMethod属性扩展编程模型。C#中没有内建的方式来指定某个方法通过Web服务是可见的(因为内建有表明一个方法是私有的方式),因此需要添加WebMethod属性来满足这一需要。

设计自定义属性 设计自定义属性的过程十分简单,在设计属性前只需要考虑以下几个方面:使用属性的目的是什麼? 属性可以以很多方式使用。你需要定义属性到底要完成什麼功能并确保这些特定功能没有内建在.NET框架集中。使用.NET修改器要比使用属性好,因为这将简化同其他装配件的集成过程。

属性必须储存什麼资讯? 属性是打算用来指示某个功能的简单标志吗?或者属性是否要储存资讯?一个属性可以拥有设计时赋予的一组资讯,并在运行时查看这些资讯。例如,看一下示例应用中的别名属性。属性应该驻留在哪个装配件中? 大多数情况下,可以将属性包含在使用该属性的装配件中。不过也有这样的例子,将属性驻留在公共的、羽量级的、共用装配件中会更好些。这种类型的配置允许客户使用属性时不必引用不需要的装配件。哪些装配件将会识别属性? 如果没有模组读取属性,那麼它将一文不值。你很可能将读取属性的类放在属性驻留的同一个装配件中。然而,正像前面提到的,也有这样的例子,你想将读取属性的方法与属性自身分别放在不同的装配件中。

public string SSN{get { return _ssn; }

set { _ssn = value; }

} 作为更复杂一点的例子,假设我们将有一个属性称为“Alias”。该属性的任务是检查一个property可能拥有别名。这将允许将一个property值映射给另一个property即使批roperty的名字不匹配。这个属性接受一系列字串值作为映射名。(列表B) 列表B[Alias (\”FirstName\”, \”First\”)]

public string FName{get { return _fName; }

set { _fName = value; }

} 在这个例子中,property“FName”被映射到“FirstName”和“First”,请查看示例应用以更详细的瞭解这种应用。

public Alias(params string[] names){this.Names = names;}public string[] Names{get { return _names; }

set { _names = value; }}}正如你所看到的,这就是一个普通的类,唯一的例外就是继承自System.Attribute类。我们不需要作任何特别的事情使它成为一个类。我们只是简单的定义了一个需要使用的构造函数并创建了一个property和一个存储资料的私有成员。 列表D是个更简单的属性——“Hide”属性。这个属性不需要构造函数(使用默认的构建函数),也不储存资料。因为这个属性只是一个简单的标志类型的属性。 列表DClass Hide : System.Attribute{//This is a simple attribute, that only requires

// the default constructor.}从代码中读取属性 读取属性并检查其中的资料比使用属性或创建属性显著地更加复杂。读取属性要求开发人员要对如何使用一个物件的反射资讯有个基本瞭解。如果你不熟悉反射机制,可以阅读“应用反射”系列文章。 假设我们正在查看一个类,我们想知道该类的那个properties使用了Alias属性以及都有哪些别名。列表E实现了这个功能。 列表EPrivate Dictionarystring, string GetAliasListing(Type destinationType){//Get all the properties that are in the

// destination type.

PropertyInfo[] destinationProperties = destinationType.GetProperties();

Dictionarystring, string aliases = newDictionarystring, string();

for each (PropertyInfo property in destinationProperties){//Get the alias attributes.

object[] aliasAttributes =

property. GetCustomAttributes( typeof(Alias), true);

//Loop through the alias attributes and

// add them to the dictionary.

foreach (object attribute in aliasAttributes)

foreach (string name in ((Alias)attribute).Names)

aliases.Add(name, property.Name);

//We also need to add the property name

// as an alias.

aliases.Add(property.Name, property.Name);}return aliases;}这段代码最重要的地方是对GetCustomAttributes的调用以及回圈遍历属性提取别名的地方。 GetCustomAttributes方法可以在我们从物件类型中提取的PropertyInfo类中找到。在上面的应用中,我们将要查询的属性类型作为参数传给GetCustomAttributes方法,同时还将“true”传递给该方法使得可以列出继承的属性。如何发现匹配的属性,GetCustomAttributes方法将返回一个物件阵列。还有另外一种超负荷方法可以列出property上的所有属性,而不管属性类型是什麼。 一旦有了属性,我们需要检查它们并从中提取需要的资讯。这可以通过遍历由GetCustomAttributes方法得到的物件阵列并将每个物件映射成我们要查询的属性来完成。在完成映射後,我们就可以像访问任意其他类的properties一样来访问属性的properties。 正如我在前面所说,读取属性是最困难的部分。然而,一旦我们写後读取属性的代码後,将来回忆和实施起来就相当容易了。

应用示例 我强烈建议你下载本文包含的这个应用示例。这个应用示例在一个简单的Windows应用中实现了下面的属性,并演示了如何读取和使用它们。Alias——这同上面提到的Alias属性一样。当你需要将一种类型的物件翻译为另一种类型时,需要使用该属性。例如,如果你有一个Customer物件和一个Address物件,你可能需要将它们都翻译为一个合并的包含人名和位址的Person物件,当一个不能使用直接映射时,可以使用该属性。DisplayName——示例代码中包括检查一个类实例并将它的property名称与值输出到萤幕上的代码。这个属性可用於覆盖送到萤幕显示的property名称。例如,一个名为“FName”property可以使用DisplayName属性,因此它显示为“First Name”。Examine——这个属性使得示例应用中的PrintObject方法进入更深一层,并输出使用了Examine属性的property的值。例如,示例应用中的Customer物件将Examine属性应用到Address property。这将指示PrintObject方法输出address property中的所有资讯。Hide——这个属性指示PrintObject()方法不要将当前property输出到萤幕。该属性用在Customer物件的SSN property上。 示例应用中包含了实现和读取属性每一步的注释,仔细看一下,我敢保证你会发现一些在自己的应用中可以利用的功能。

自定义属性的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于自定义属性值超过24个怎么解决、自定义属性的信息别忘了在本站进行查找喔。

本文从网络转载,原文地址:https://ww.hanming.com/18729.html,原作者保留一切权利,若侵权请联系删除。

《自定义属性值超过24个怎么解决,自定义属性》来自互联网同行内容,若有侵权,请联系我们删除!

VPS购买请点击我

文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。

目录[+]