2014-10-03 68 views
0

我需要应用程序中的特殊常量。资源项目会是这样的:xml常量的自定义资源项类型

<resources> 
     <item type="myType" format="string" name="Name" >Some words</item> 
     <item type="myType" format="string" name="Name1" >Some words</item> 
     <item type="myType" format="string" name="Name2" >Some words</item> 
</resources> 

,我想打电话这样说:

<ImageView 
      android:id="@+id/ID" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:src="@drawable/drawable" 
      android:contentDescription:"@myType/Name" /> 

任何想法如何做到这一点?我查了几个网站,但没有给我任何解决方案。 在此先感谢! :)

+3

类型是预定义的,你不能创建你自己的。无论如何,你为什么要这么做?看来你只是定义了字符串:'有些字' – kcoppock 2014-10-03 16:04:40

回答

0

任何想法如何做到这一点?

构建您自己的移动操作系统和开发工具链。这可能需要一段时间,并会限制您的应用的采用。

IOW,这是标准的Android无法实现的。

目前已经基本图元(intfloatboolean)和String,除了更复杂的标准结构,如布局和动画的“价值”的资源类型。如果你需要比其他的东西,你将需要拿出一些其他的解决方案,如:

  • 使用res/xml/自己的自定义XML和应用通过Java代码,XML在运行时

  • 使用自定义的Gradle任务从一些其他文件格式(例如,自定义XML)生成代码生成标准资源,然后使用这些代码生成的资源与自己手动编写生成的资源没有区别(例如,它仍然是@string/foo ,而不是@yourthingy/foo