public interface IIOMetadataController
 该接口将由可以确定 IIOMetadata 对象设置值(通过提供一个 GUI 来从用户那里获取值或其他方式)的对象实现。此接口只指定调用控制器的一般 activate 方法,不考虑该控制器获得值的方式(也就是说,该控制器是提供一个 GUI 还是只计算一个值的集合与此接口无关)。 
 在 activate 方法中,控制器通过查询 IIOMetadata 对象的设置(使用 XML DOM 树或特定于插件的接口)获取初始值,通过所有方法修改值,然后再使用 setFromTree 或 mergeTree 方法抑或特定于插件的接口修改 IIOMetadata 对象的设置值。通常,应用程序可能期望在 activate 方法返回 true 时,IIOMetadata 对象已经准备好用于写入操作。 
 供应商可以选择为他们针对特定插件定义的 IIOMetadata 子类提供 GUI。其可以作为相应 IIOParam 子类中的默认控制器。 
 作为选择,可以将算法过程(比如数据库查找或解析命令行)用作控制器,在这种情况下,activate 方法将只查找或计算设置值,调用 IIOMetadata 上的方法设置其状态以及返回 true。 
IIOMetadata.setController(javax.imageio.metadata.IIOMetadataController), 
    IIOMetadata.getController(), 
    IIOMetadata.getDefaultController(), 
    IIOMetadata.hasController(), 
    IIOMetadata.activateController()
   | 方法摘要 | |
|---|---|
  boolean |  
     activate(IIOMetadata metadata) 激活控制器。  |  
    
| 方法详细信息 | 
|---|
boolean activate(IIOMetadata metadata)
true,则 
    IIOMetadata 对象中的所有设置都应该已经准备好用于写入操作。如果返回 
    false,则 
    IIOMetadata 对象中没有任何设置会被干扰(
    也就是说,用户取消了该操作)。 
    
metadata - 要修改的 
      IIOMetadata 对象。 
     IIOMetadata,则返回 
      true,否则返回 
      false。 
     IllegalArgumentException - 如果 
      metadata 为 
      null 或者不是正确类的实例。