初學(xué)Flutter 問題匯總

  1. FlatButton 四周有空白:
    建議更換為CupertinoButton, 并設(shè)置其屬性
      disabledColor: Color(0XFFCCCCCC),
      child: Text(
        "Test",
        style: TextStyle(color: Colors.white, fontSize: 16),
      ),
      onPressed: _counterNum >= 60 ? getVerificationCode : null,
      padding: EdgeInsets.all(0), //該屬性會減去兩邊空白
      color: Color(0xffCA353A),
      borderRadius: BorderRadius.all(Radius.circular(20)),
   )
  1. Flutter TextField上下有空白
TextField(
    decoration: InputDecoration(
                    hintText: "Please enter the verification code",
                    hintStyle:
                        TextStyle(fontSize: 12, color: Color(0xffdfdfdf)),
                    counterText: '',
                    contentPadding: EdgeInsets.symmetric(horizontal: 0), //這個屬性是設(shè)置內(nèi)容padding,去除空白也要設(shè)置這個
                    border: OutlineInputBorder(borderSide: BorderSide.none),//這兩個屬性會去掉底部空白和下劃線,貌似加上下劃線底部就會有一大段空白區(qū)域
                  ),
)
  1. Flutter button設(shè)置disable禁用狀態(tài)
    查找了半天的文檔,只看到了disableColor屬性,并沒有看到有設(shè)置disable的屬性,百度了半天,終于找到了設(shè)置disable的方法
    只需要將FlatButton以及其他button的onPressed設(shè)置為null,就是將Button設(shè)置為了disable禁用狀態(tài)
CupertinoButton(
      disabledColor: Color(0XFFCCCCCC),
      child: Text(
        "Test",
        style: TextStyle(color: Colors.white, fontSize: 16),
      ),
      onPressed: _counterNum >= 60 ? getVerificationCode : null,//計數(shù)大于等于60,button可以點(diǎn)擊狀態(tài)。計數(shù)小于60,onPressed為null button處于disable狀態(tài)
      padding: EdgeInsets.all(0), //該屬性會減去兩邊空白
      color: Color(0xffCA353A),
      borderRadius: BorderRadius.all(Radius.circular(20)),//設(shè)置圓角
   )
  1. 在進(jìn)入首頁前要執(zhí)行await,初始化數(shù)據(jù)
Future<void> main() async {
  // 01、注冊 fluro routes
  Router router = Router();
  Routes.configureRoutes(router);
  Application.router = router;

  //02、注冊本地消息通知(*非必要如不需要請刪除)
  flutterLocalNotificationsPlugin = FlutterLocalNotificationsPlugin();

  //03、監(jiān)聽前后臺
  MonitorAppState();
  WidgetsFlutterBinding.ensureInitialized(); //初始化數(shù)據(jù)要填寫,我是用了SP,不寫這句會報錯
  await LoginUser.setUserInfo();
  //**、進(jìn)入主控制器
  runApp(routes.buildPage("app", null));

  //04、獲取設(shè)備信息
  getDeviceInfo();
}

6.手機(jī)升級iOS 14以后,Xcode可以運(yùn)行到手機(jī)上,而Flutter 運(yùn)行報錯:
Your Xcode version may be too old for your iOS version.

image.png
報錯的元兇是flutter/bin/cache/artifacts/ios-deploy/ios-deploy,不知道ios-deploy可自行百度,查看當(dāng)前版本為1.10,下載最新版本,編譯后替換Flutter內(nèi)該文件即可~

7.Flutter Text中文中標(biāo)點(diǎn)符號也居中了,找半天沒找到解決方法,最后各種嘗試給文字樣式的local 賦值就行了
image.png

沒改之前
image.png
改了之后
image.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容