NativeScript / NativeScript/plugins

[nativescript-ui-listview] Upgrade from 10.0.0.1 to 14.2.4 breaks my list

Aperta
#355 3 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Lingua principale
TypeScript
Stelle
206
Fork
123
Merge medio
2g 1h
PR unite (30g)
1

Descrizione

This only happens on iOS. Android is fine. Items overlap after the upgrade.

On v10:
image

On v14
image

and the relevant code (note the issue occurs in the "pot" template):

<lv:RadListView class='event-list' row="1" height="100%" items="{{ list }}" itemTemplateSelector="{{ templateSelector }}">
        <lv:RadListView.listViewLayout>
          <lv:ListViewLinearLayout scrollDirection="Vertical" />
        </lv:RadListView.listViewLayout>
        <lv:RadListView.itemTemplates>
          <template key="promotion">
            <StackLayout class='promotion'>
              <Label text="{{  title  }}" class='title' textWrap='true' />
              <Label text="{{  description  }}" class='description' textWrap='true' />
            </StackLayout>
          </template>
          <template key="event">
            <StackLayout class="event">
              <Label col="1" class="event-name" textWrap="true">
                <FormattedString>
                  <Span text="{{name}}" />
                  <Span text=" - " />
                  <Span text="{{ humanDate(date) }}" />
                </FormattedString>
              </Label>
              <Label text="{{ 'Caller: ' + caller}}" class="event-caller" textWrap="true" />
              <Label text="{{times}}" class="event-times" textWrap="true" />
              <Label text="{{ other }}" class="event-other" visibility="{{ other ? 'visible' : 'collapsed' }}" textWrap="true" />
            </StackLayout>
          </template>
          <template key="pot">
            <StackLayout class="pot">
              <Label text="{{name}}" textWrap="true" />
              <Label class="playoff" textWrap="true" visibility="{{ playoffDate ? 'visible' : 'collapsed' }}">
                <FormattedString>
                  <span text="Playoff: " />
                  <span text="{{ humanDate(playoffDate) }}" />
                  <span text="{{ ' ' + playoffEvent }}" />
                  <span text="{{ formatPlayoffPrize(playoffPrize) }}" />
                </FormattedString>
              </Label>
              <Label class="info" text="{{info}}" textWrap="true" visibility="{{ info ? 'visible' : 'collapsed' }}" />
              <FlexboxLayout flexDirection="row" width="100%" justifyContent="space-between">
                <Repeater items="{{balls}}">
                  <Repeater.itemsLayout>
                    <StackLayout orientation="horizontal" />
                  </Repeater.itemsLayout>
                  <Repeater.itemTemplate>
                    <Image src="{{ `~/assets/images/balls-lettered/` + $value + `.png` }}" margin="10" height="50" visibility="{{ $value != '0' ? 'visible' : 'collapsed' }}" />
                  </Repeater.itemTemplate>
                </Repeater>
                <Label textAlignment="right" verticalAlignment="bottom" textWrap="true">
                  <FormattedString>
                    <Span text="{{numbers ? 'in ' + numbers + '#s or less ': ''}}" textWrap="true" textAlignment="right" />
                    <Span text="{{formatPrize(prize)}}" textAlignment="right" />
                  </FormattedString>
                </Label>
              </FlexboxLayout>
            </StackLayout>
          </template>
        </lv:RadListView.itemTemplates>


      </lv:RadListView>

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Inizia con il markup RadListView fornito e il template dell'elemento pot, quindi riproduci la sovrapposizione su iOS confrontando le versioni 10.0.0.1 e 14.2.4. Analizza il layout dell'elenco e il comportamento del dimensionamento degli elementi; il lavoro è completato quando gli elementi pot non si sovrappongono più su iOS, mentre il comportamento Android esistente rimane invariato.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
ios, typescript
Ambito
frontend, mobile
Tipo di issue
Bug
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Da chiarire
Idoneità per principianti
30/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.