ListView Subtitulado delegado, tamanho do ícone e quebra da palavra do título?

2

Estou trabalhando em um aplicativo móvel do Ubuntu e tenho algumas perguntas sobre como personalizar um listview.

O listitem pode conter um ícone, mas terá um título e uma legenda.

O que estou tendo problemas é que a miniatura é retirada da internet e quero limitar a altura e a largura dela.

Além disso, o título não é agrupado se for muito longo; em vez disso, apenas trunca e adiciona "..." no final.

Obrigado.

    
por Javalsu 23.02.2013 / 21:59

1 resposta

2

Como declarado na documentação para ListItem.Base (a partir do qual ListItem.Subtitle herda):

  ícone

: variante

     

A localização do ícone a ser exibido no item da lista (opcional), ou um   Item que é mostrado no lado esquerdo dentro do item da lista . O ícone   será automaticamente ancorado no lado esquerdo do item da lista e   se a altura for indefinida, na parte superior e inferior do item da lista.

Você pode fornecer sua própria imagem com largura e altura específicas para ser usada como um ícone.

ListView {
    [...]
    delegate: Subtitled {
        id: mySubtitledView
        text: 'Your text'
        subText: 'Your subtext'
        icon: Image {
            source: '<source_uri>'
            width: units.gu(5);
            height: units.gu(5);
        }
        height: units.gu(5)
    }
}

Observe o parâmetro height definido para Subtitled , pois ele não crescerá automaticamente para se ajustar ao tamanho da imagem.

Quanto à sua segunda pergunta, não encontrei uma maneira "limpa" de formatar o text , mas você pode acessar diretamente os filhos do Subtitled e modificar lá. O texto principal parece ser os primeiros filhos dos primeiros filhos, então isso funcionará:

       Component.onCompleted: {
            // Accessing Subtitled > Item > LabelVisual
            mySubtitledView.children[0].children[0].wrapMode = Text.Wrap
        }

Isso funcionou para mim, mas não sei se é uma solução robusta. Talvez outros possam comentar.

    
por Ballenato 21.08.2013 / 14:26