Flutter:可以将 CupertinoPicker 中的项目定位在两条线之间的中心吗?

Jon*_*oni 2 layout flutter cupertinopicker

是否可以更改项目的默认位置 CupertinoPicker为两行之间的中心?默认位置似乎更倾向于上线。

这是重现的代码 CupertinoPicker

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

void main() => runApp(MyApp());

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


class MyHomePage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: CupertinoPicker(
        itemExtent: 50,
        onSelectedItemChanged: (int index) {
          print(index);
        },
        children: <Widget>[
          Text("Item 1"),
          Text("Item 2"),
          Text("Item 3"),
        ],
      ),
    );
  }
}
Run Code Online (Sandbox Code Playgroud)

这是它的样子:

在此处输入图片说明

感谢您的任何提示、提示和建议!

Joã*_*res 5

用一个Center小部件包裹你的孩子小部件:

CupertinoPicker(
  itemExtent: 50,
  onSelectedItemChanged: (int index) {
    print(index);
  },
  children: <Widget>[
    Center(child: Text("Item 1")),
    Center(child: Text("Item 2")),
    Center(child: Text("Item 3")),
  ],
),
Run Code Online (Sandbox Code Playgroud)