2016-07-23 3 views
3

Comment définir la valeur de colonne et de ligne d'un élément dans gridLayout dans Anko?Anko - Définition de la valeur de ligne et de colonne pour un élément dans gridLayout

J'ai essayé plusieurs versions, mais cela ne compile pas:

return UI { 
     gridLayout() { 
      columnCount = 2 
      rowCount = 3 
      button("1x1") { 

      }.lparams() { column = 1; row = 1 } 
     } 
    }.view 

Quand je le mets comme celui-ci (en fonction), ou propriétés à l'intérieur des accolades, il dit qu'il ne peut pas faire référence à column ou row. Quand je leur fournis comme arguments à lparams, il dit none of the following functions can be called with arguments supplied.

Répondre

3

Comme il est indiqué dans la documentation GridLayout:

Les enfants occupent une ou plusieurs cellules contiguës, telles que définies par leurs rowSpec et columnSpec paramètres de mise en page. Chaque spécification définit l'ensemble des rangées ou des colonnes à occuper ; et comment les enfants doivent être alignés dans le groupe de cellules résultant.

Vous pouvez utiliser rowSpec et columnSpec comme ceci:

return UI { 
    gridLayout() { 
     columnCount = 2 
     rowCount = 3 
     button("1x1") { 

     }.lparams { 
      rowSpec = GridLayout.spec(1) 
      columnSpec = GridLayout.spec(1) 
     } 
    } 
}.view