10

There is SelectableText widget that allows you to make text selectable. But it misses the overflow parameter, which is required...

Is there any workaround, which can make it work? Or a similar solution? Thanks!

KuKu
  • 6,654
  • 1
  • 13
  • 25
Andriy Antonov
  • 1,360
  • 2
  • 15
  • 29

4 Answers4

12

Just experienced this. The problem is overflow hasn't been made the top level parameter in case of SelectableText as with Text in Flutter which suggests that it must be there, just not as the top level parameter which is true as it is in TextStyle.

Hence, to use overflow in SelectableText, change

SelectableText(
  text,
  overflow: TextOverflow.ellipsis
)

to

SelectableText(
  text,
  style: TextStyle(
    overflow: TextOverflow.ellipsis,
  ),
)
Lalit Fauzdar
  • 5,953
  • 2
  • 26
  • 50
1

Also, remember that when you want the space to expand, you can also use Expanded or Flexible. Hope it helps.

Row(children: [
                  Text('Código de inscrição: '),
                  Expanded(
                    child: SelectableText(club.SignUpCode),
                  )
                ]),
MarcoFerreira
  • 195
  • 1
  • 14
0

In my case above solutions didn't work. I found another solution using ListTile:

ListTile(
    title: SelectableText(
           text,
           toolbarOptions: const ToolbarOptions(
                  copy: true,
                  selectAll: true,
                  cut: true,
           ),
    ),
)

and it worked as overflow: TextOverflow.ellipsis for me

-1

If the TextOverflow.clip effect is enough for you this did the trick for me:

SelectableText("My text"
              maxLines: 1,
              scrollPhysics: NeverScrollableScrollPhysics())