颤振-滚动listview时如何获得圆形边框?
我正在使用列底部带有芯片的listview 从listview开始的第一个图像是圆形,但最后显示为矩形 滚动listview芯片1天时溢出(第二幅图像) 我想两边底部都需要圆形,如何实现?提前谢谢 我的代码颤振-滚动listview时如何获得圆形边框?,listview,flutter,dart,android-listview,android-chips,Listview,Flutter,Dart,Android Listview,Android Chips,我正在使用列底部带有芯片的listview 从listview开始的第一个图像是圆形,但最后显示为矩形 滚动listview芯片1天时溢出(第二幅图像) 我想两边底部都需要圆形,如何实现?提前谢谢 我的代码 Container( padding: EdgeInsets.only( top: 16.0, ), width: MediaQuery.of(contex
Container(
padding: EdgeInsets.only(
top: 16.0,
),
width: MediaQuery.of(context).size.width,
height: 100,
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(12.0),
color: Colors.white),
child: Column(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[
Text(""),
Container(
height: 35,
decoration: BoxDecoration(
borderRadius: BorderRadius.only(
bottomLeft: Radius.circular(12.0),
bottomRight: Radius.circular(12.0)),
color:
Theme.of(context).chipTheme.backgroundColor),
child: ListView(
scrollDirection: Axis.horizontal,
children: getChoiceChips(),
),
)
],
),
)
容器(
填充:仅限边缘设置(
排名:16.0,
),
宽度:MediaQuery.of(context).size.width,
身高:100,
装饰:盒子装饰(
边界半径:边界半径。圆形(12.0),
颜色:颜色。白色),
子:列(
mainAxisAlignment:mainAxisAlignment.spaceBetween,
crossAxisAlignment:crossAxisAlignment.start,
儿童:[
正文(“”),
容器(
身高:35,
装饰:盒子装饰(
borderRadius:仅限borderRadius(
左下角:半径。圆形(12.0),
右下角:半径。圆形(12.0)),
颜色:
Theme.of(context.chipTheme.backgroundColor),
子:ListView(
滚动方向:轴水平,
儿童:getChoiceChips(),
),
)
],
),
)
芯片功能
getChoiceChips() {
List<Widget> choiceChipList = [];
List<String> choiceString = [
'1 Day',
'1 Week',
'1 Month',
'3 Months',
'1 Year'
];
for (String choice in choiceString) {
choiceChipList.add(Padding(
padding: const EdgeInsets.only(left: 2.0, right: 2.0),
child: ChoiceChip(
label: Text(choice),
selected: choice == selectedChoice,
onSelected: (newSelectedChoice) {
setState(() {
print(selectedChoice);
print(newSelectedChoice);
selectedChoice = choice;
print(selectedChoice);
print(choice);
});
},
),
));
}
return choiceChipList;
}
getChoiceChips(){
列表选项ChipList=[];
列表选项字符串=[
“一天”,
“1周”,
“1个月”,
“3个月”,
“1年”
];
for(choiceString中的字符串选择){
choiceChipList.add(填充(
填充:仅限常量边集(左:2.0,右:2.0),
孩子:选择权(
标签:文本(选项),
selected:choice==selectedChoice,
onSelected:(newSelectedChoice){
设置状态(){
打印(selectedChoice);
印刷品(新闻选择);
selectedChoice=选择;
打印(selectedChoice);
印刷(选择);
});
},
),
));
}
返回货物清单;
}
容器中的盒子装饰
将仅显示圆角作为视觉特征。如果您想要将内容实际剪切到这些圆角内而不溢出,那么您需要将容器包围在一个圆形的容器中
ClipRRect(
边界半径:边界半径。圆形(12.0),
子:容器(
填充:仅限边缘设置(顶部:16.0),
宽度:MediaQuery.of(context).size.width,
身高:100,
装饰:盒子装饰(颜色:彩色。白色),
子:列(
...
),
),
),