Цикл посредством всех подпредставлений представления Android?

Вместо использования track[$index].value вы должны использовать step, а также отслеживать ngRepeat по $index

var app = angular.module("app", []);

app.controller("MainCtrl", function($scope) {
  $scope.noteMatrix = [
    [false, false, false],
    [false, true, false],
    [false, false, false]
  ];
});
<html ng-app="app">

<head>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.5/angular.min.js"></script>

</head>

<body ng-controller="MainCtrl">
  {{noteMatrix}}
  <table>
    <tbody>
      <tr ng-repeat="track in noteMatrix track by $index">
        <td>-{{$index}}-</td>
        {{track}}
        <td ng-repeat="step in track track by $index">
          <input type="checkbox" ng-model="step"> {{step}}
        </td>
      </tr>
    </tbody>
  </table>
</body>

</html>
[1110 ]

31
задан MikeL 13 May 2019 в 03:11
поделиться

3 ответа

@jqpubliq Правильно, но если вы действительно хотите просмотреть все представления, вы можете просто использовать getChildCount () и getChildAt () методы из ViewGroup . Все остальное сделает простой рекурсивный метод.

21
ответ дан 27 November 2019 в 21:47
поделиться

Попробуйте это. Получает все представления в родительском расположении & возвращает список массива представлений.

public List<View> getAllViews(ViewGroup layout){
        List<View> views = new ArrayList<>();
        for(int i =0; i< layout.getChildCount(); i++){
            views.add(layout.getChildAt(i));
        }
        return views;
    }
0
ответ дан 27 November 2019 в 21:47
поделиться

Использование Views звучит так, как будто будет очень сложно отрендерить что-либо хорошо, если есть движение. Вы, вероятно, захотите рисовать на Canvas или использовать OpenGL , если вы не делаете что-то действительно статичное. Вот отличный доклад с прошлогодней конференции I / O по созданию игр для Android. Это довольно долго, и вы можете пропустить около 15 минут. Также доступен исходный код. Это должно дать вам хорошее представление о том, как поступать

0
ответ дан 27 November 2019 в 21:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: