본문 바로가기
Flutter/Flutter FAQ

flutter 플러터 - 텍스트 래핑 [중복], Flutter- wrapping text [duplicate]

by 베타코드 2023. 5. 9.
반응형

질문


텍스트가 커짐에 따라 텍스트를 랩하려고합니다. 거의 모든 것으로 랩을 시도했지만 텍스트는 여전히 한 줄로 유지되며 화면에서 벗어납니다. 이를 어떻게 달성할 수 있는지 아시는 분 계십니까? 도움이 매우 감사합니다!

Positioned(
    left: position.dx,
    top: position.dy,
    child: new Draggable(
      data: widget.index,
      onDragStarted: widget.setDragging,
      onDraggableCanceled: (velocity, offset) {
        setState(() {
          position = offset;
          widget.secondCallback(offset, widget.index);
          widget.endDragging();
        });
      },
      child: new GestureDetector(
        onTap: () {
          widget.callback(widget.caption, widget.index);
        },
        child: new Text(
            widget.caption.caption,
            style: new TextStyle(
              color: widget.caption.color,
              fontSize: widget.caption.fontSize,
            ),
          ),
      ),
      feedback: new Material(
        type: MaterialType.transparency,
        child: new Text(
          widget.caption.caption,
          style: new TextStyle(
              color: widget.caption.color,
              fontSize: widget.caption.fontSize),
          softWrap: true,
        ),
      ),
    ));

답변


Flexible은 해결책입니다.

new Container(
       child: Row(
         children: <Widget>[
            Flexible(
               child: new Text("A looooooooooooooooooong text"))
                ],
        ));

위젯을 배열하는 방법에 대한 공식 문서는 https://flutter.dev/docs/development/ui/layout#lay-out-multiple-widgets-vertically-and-horizontally입니다.

FlexibleExpandedColumn, Row, 또는 Flex 내에서만 사용해야합니다. 그렇지 않으면 ParentDataWidget이 잘못 사용됩니다.

해결책은 단순히 Flexible이 아닙니다.

반응형

댓글