Android 获取运行时可用的文本字段列表?

Android 获取运行时可用的文本字段列表?,android,android-layout,android-identifiers,proteus,Android,Android Layout,Android Identifiers,Proteus,我正在使用一个名为android的库,它在运行时使用服务器上的JSON文件来扩展布局。这个库允许数据绑定,但我的问题是,在使用我的应用程序时,如何从这些字段中获取数据?我无法引用布局的任何标识符,因为它们在编译期间不存在。当(R.id.input)在运行时之前实际上不存在时,有没有办法忽略语句中的错误 View view = inflater.infalte(R.layout.fragment_form, container, false); TextView textView = (TextV

我正在使用一个名为android的库,它在运行时使用服务器上的JSON文件来扩展布局。这个库允许数据绑定,但我的问题是,在使用我的应用程序时,如何从这些字段中获取数据?我无法引用布局的任何标识符,因为它们在编译期间不存在。当(R.id.input)在运行时之前实际上不存在时,有没有办法忽略语句中的错误

View view = inflater.infalte(R.layout.fragment_form, container, false);
TextView textView = (TextView)view.findViewById(R.id.input);
或者在运行时以编程方式获取所有可用唯一标识符的列表?任何信息都会有帮助。谢谢。

在运行时生成视图ID,这与编译时为Android XML布局生成的
int
ID不同。与Android不同,proteus创建的视图id基于
String
,而
R.id.
将不起作用

Proteus提供了实用的方法来通过
字符串
id查找视图

布局:

{
  "type": "TextView",
  "id": "myId"
}
爪哇:

返回的视图也可以是
ProteusView

有关更多信息,请参阅

维基有点过时,上面的答案是针对
5.0.0-rc11
release及更高版本。维基应该很快更新

View view = proteusView.getViewManager().findViewById("myId"); // can be null