2017-05-13 5 views
2

Androidの場合、私はTextView's textIsSelectable attributeに慣れていますが、私はTextの文書でそれを見ていませんでした。ユーザーがテキストウィジェットからテキストを選択できるようにするにはどうすればよいですか?

現在、私はTextField(編集可能)を使用しており、表示されたテキストに変更を保存していません。私の主な必要性は、コピー貼りを許可することです。

答えて

3

私は、次の(簡体字)のコードで私のプロジェクトの一つでこれを解決:だからジェスチャーを検出したり、クリップボードのメソッドを呼び出すためにGestureDetectorを使用することができますウィジェットにテキストを折り返す

import 'package:flutter/material.dart'; 
import 'package:flutter/services.dart'; 

void main() { 
    runApp(new MyApp()); 
} 

class MyApp extends StatelessWidget { 
    @override 
    Widget build(BuildContext context) { 
    return new MaterialApp(
     title: 'Flutter Demo', 
     home: new MyHomePage(), 
    ); 
    } 
} 

class MyHomePage extends StatelessWidget { 
    GlobalKey<ScaffoldState> _scaffoldKey = new GlobalKey(); 
    String _text = 'TestString'; 

    /// Pastes given String to the clipboard and shows Popup-Snackbar 
    void copyToClipboard(String toClipboard) { 
    ClipboardData data = new ClipboardData(text: toClipboard); 
    Clipboard.setData(data); 
    _scaffoldKey.currentState.showSnackBar(new SnackBar(
     content: new Text(toClipboard + ' copied to clipboard.'), 
    )); 
    } 

    @override 
    Widget build(BuildContext context) { 
    return new Scaffold(
     key: _scaffoldKey, 
     appBar: new AppBar(
     title: new Text('TestProject'), 
    ), 
     body: new InkWell(
     onLongPress:() => copyToClipboard(_text), 
     child: new Center(
      child: new Text(_text), 
     ), 
    ), 
    ); 
    } 
} 


希望します。

関連する問題