linecountBar method
dynamic
linecountBar()
Implementation
linecountBar() {
return Column(
children: [
Flexible(
child: ListView.builder(
padding: const EdgeInsets.only(top: 10),
shrinkWrap: true,
controller: linebarController,
physics: const NeverScrollableScrollPhysics(),
itemCount: _currNumLines == 0 ? 1 : _currNumLines,
itemBuilder: (_, i) {
TextEditingController lineController = TextEditingController();
lineController.text = (i + 1).toString();
return Linebar(
calculateBarWidth: () {
if (i + 1 > 9) {
SchedulerBinding.instance.addPostFrameCallback(
(timeStamp) {
setState(() {
_initialWidth = getTextHeight(context) +
(8 * (i + 1).toString().length);
});
},
);
}
},
child: TextField(
readOnly: true,
enableInteractiveSelection: false,
controller: lineController,
textAlign: TextAlign.center,
style: TextStyle(
fontSize: getFontSize(context, fontSize: 18),
fontWeight: FontWeight.w500,
fontFamily: widget.options.fontFamily,
color: widget.options.linebarTextColor,
),
maxLines: null,
decoration: InputDecoration(
border: InputBorder.none,
contentPadding: EdgeInsets.zero,
isDense: true,
),
),
);
},
),
)
],
);
}