小编Joh*_*abs的帖子

Android:以编程方式迭代资源ID

我希望能够遍历生成的R文件中的所有字段.

就像是:

for(int id : R.id.getAllFields()){
//Do something with id, like create a view for each image
}
Run Code Online (Sandbox Code Playgroud)

我尝试过反射,但我似乎无法加载R类中包含的特定内部类.所以,例如,这对我不起作用:

Class c = Class.forName("packageName.R.id")
Run Code Online (Sandbox Code Playgroud)

我可以反思R类本身,但我需要id类中的字段.

我也试过查看Resources类,但在那里找不到任何东西.在这种情况下,似乎您可以获取resourceID并获取该id的字符串名称,或者获取字符串名称并获取相应的resourceID.我找不到类似的东西:

int[] Resources.getAllResourceIDs()
Run Code Online (Sandbox Code Playgroud)

也许我错了.或者也许我不应该手动打字,例如:

int[] myIds = {R.id.firstResource, R.id.secondResource}
Run Code Online (Sandbox Code Playgroud)

这种方法的缺点是在使用UI设计器时不够灵活.每当他向XML文件添加新资源时,我都必须更新代码.显然不是太痛苦,但它仍然是好的,似乎它应该是可行的.

编辑:

以下关于ViewGroup.getChildCount()/ ViewGroup.getChildAt()的答案可以正常工作.但是,我还必须找到一种方法来实例化我的XML ViewGroup/Layout.为此,请尝试以下方法:

LayoutInflater li = MyActivity.getLayoutInflater();
ViewGroup vg = (ViewGroup) li.inflate(R.layout.main, null);
Run Code Online (Sandbox Code Playgroud)

android

9
推荐指数
2
解决办法
7558
查看次数

有没有办法将powershell字符串转换为哈希表?

有什么方法可以告诉powershell从使用正常语法格式化的字符串构造一个哈希表来内联创建哈希表?

例如,有没有办法做这样的事情:

$fooHashString = "@{key='value'}
$fooHash = TellPowershellToEvaluateSpecialStringExpressions($fooHashString)
$fooHash

Name                           Value
----                           -----
key                            value
Run Code Online (Sandbox Code Playgroud)

powershell

4
推荐指数
2
解决办法
7413
查看次数

标签 统计

android ×1

powershell ×1