当前位置: 首页 > 知识库问答 >
问题:

对于每个循环:将布局转换为视图阵列?

东方俊杰
2023-03-14

正如标题所问,

假设我有一个布局(如相对布局线性布局,等等),有大量的视图

>

  • 这里的情况是,我想使用一个for-each方法对他们所有人做同样的事情。

    问题是,当数组符合条件时,您只能使用for-each方法迭代。

    P. S.我知道你可以这样做:

    for(int i=0;i<layout.getChildCount();i++){
        View v=layout.getChildAt(i);
        v.doSomething(parameters);
    }
    
    • 我只需要知道是否有其他方法可以为每个方法使用,这样我就可以节省时间,而不是在我开发的每个应用程序上反复输入
    • 我仍然会接受答案,所以不要害羞

  • 共有1个答案

    仲孙鸣
    2023-03-14

    为什么不创建一个助手方法,比如:

    public final class ViewGroupHelper {
    
        public static void forEach(@NonNull ViewGroup group,
                                   @NonNull Action action) {
            for (int i = 0; i < group.getChildCount(); i++) {
                final View view = group.getChildAt(i);
                action.apply(view);
            }
        }
    
        public interface Action {
            void apply(@NonNull View view);
        }
    
        private ViewGroupHelper() {}
    }
    

    ...

    ViewGroupHelper.forEach(layout, new ViewGroupHelper.Action() {
        @Override
        public void apply(@NonNull View view) {
            view.doSomething();
        }
    });
    

    或者使用lambdaViewGroupHelper.for每个(布局,视图-

     类似资料:
    • 问题内容: 我正在尝试将此for循环重写为for每个循环。 这就是我尝试过的 谁能指出我正确的方向?谢谢。 问题答案: 我认为您想得太多… :)

    • 问题内容: 我想将我的线性布局制作成环形。 我遵循了此链接,但没有环形布局,而是环形布局。 https://developer.android.com/guide/topics/resources/drawable- resource.html#Shape 我的xml 和ring.xml在drawable中 我只是在布局中出现一个圆圈而不是ring。抱歉,由于声誉欠佳,我无法上传输出图片。 问题答

    • 问题内容: 我想为每个循环做一个,但要使其同步运行。循环的每次迭代都将执行http.get调用,并返回json以将值插入数据库中。问题是for循环异步运行,这导致所有http.gets一次全部运行,并且我的数据库最终没有插入所有数据。我正在使用async- foreach尝试执行我想要的操作它可以做到,但是如果我能以正确的方式做到这一点,我就不必使用它。 和我的模特 问题答案: 我发现在完成每个调

    • 将循环转换为时遇到问题。 方法返回 我尝试过,但需要等待将转换为并且我无法添加它。 我正在尝试下载大约15个报告异步,以等待所有的已经下载,然后将它们合并成一个PDF。 注意:我使用的是框架4.8.3

    • 英文原文:http://emberjs.com/guides/views/adding-layouts-to-views/ 视图可以拥有一个次模板来包裹其主模板。如同模板一样,布局是可以插入到视图标签下的Handlebars模板。 通过设置layoutName属性来配置视图的布局模板。 而布局模板通过Handlebars的{{yield}}助手来指定在哪里插入主模板。视图渲染后的template的

    • 我是新手反应本机,不知道如何正确循环2维阵列。目前,我在创建简单的flexbox布局循环时遇到了问题,可以从数组中获取数据。 这是我的照片。柔性箱布局 我的第一个循环是针对FlexDirection Row,它循环8个数据,第二个循环是针对列,它循环2个数据。 问题是我不能得到所有的数据,因为主视图在第二个循环上,8个数据中只有2个。 这是我的数据和渲染函数代码。 谢谢你们!