2017-06-20 59 views
1

我試圖在FloatingActionButton上點擊後創建一個SimpleDialog,但是當按下該按鈕時什麼也沒有發生。Flutter - FloatingActionButton中的SimpleDialog

我做錯了什麼?

import "package:flutter/material.dart"; 

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

class ControlleApp extends StatelessWidget { 
    @override 
    Widget build(BuildContext context) { 
    return new MaterialApp(
     home: new HomePage(), 
    ); 
    } 
} 

class HomePage extends StatelessWidget { 
    @override 
    Widget build(BuildContext context) => new Scaffold(
    appBar: new AppBar(
     backgroundColor: new Color(0xFF26C6DA), 
    ), 
    floatingActionButton: new FloatingActionButton(
     tooltip: 'Add', 
     child: new Icon(Icons.add), 
     backgroundColor: new Color(0xFFF44336), 
     onPressed:(){ 
     new SimpleDialog(
      title: new Text('Test'), 
      children: <Widget>[ 
      new RadioListTile(
       title: new Text('Testing'), value: null, groupValue: null, onChanged: (value) {}, 
      ) 
      ], 
     ); 
     }  
    ),  
); 
} 

回答

4

你需要用這種作秀ActionDialog

showDialog(context: context, child: 
    new AlertDialog(
     title: new Text("My Super title"), 
     content: new Text("Hello World"), 
    ) 
); 
+2

這個答案是正確的。您最終還是希望獲得對話結果,在這種情況下,您可以「等待」showDialog的結果,並將您希望返回的值放入調用中的Navigator.pop()中對話動作。 –

+0

當嘗試這個確切的代碼時,我得到了一個''modalBarrierDismissLabel'被稱爲null'。任何想法如何解決這個問題? –