我有一个注册页面,其中包含诸如隐私权政策,条款等文本,我希望单击这些文本网页后即可打开。 我为此使用了GestureDetector,但问题是它只包含一个孩子
但是我希望所有三个文本都在那里,并且应该执行Onclick或此处的onTap。
有什么主意吗?
GestureDetector(
onTap: () => launch(
'https://docs.flutter.io/flutter/services/UrlLauncher- class.html'),
child: Text('Terms of use,',
style: TextStyle(
color: Colors.blueAccent,
fontSize: 18.0,
fontWeight: FontWeight.bold)),
)
预期:GestureDetector内所有带有onTap的三个文本。 实际:那里只有一个孩子。
答案 0 :(得分:0)
Flutter目前不直接支持。但是您可以使用RichText来实现要求。
它类似于Android中的Spannable字符串。
答案 1 :(得分:0)
您可以尝试创建一个行小部件,其中包含所需的文本(即隐私策略,条款等)作为其子级。然后用GestureDetector小部件包装Text小部件。下面是一个代码段:
Container(
alignment: Alignment.center,
child: Row(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
GestureDetector(
onTap: (){
print("Privacy policy");
},
child: Text("Privacy policy, "),
),
GestureDetector(
onTap: (){
print('Terms');
},
child: Text("Terms, "),
),
GestureDetector(
onTap: (){
print('Contact Us');
},
child: Text("Contact Us"),
),
],
),
),
希望这会有所帮助!