Flutter常見(jiàn)問(wèn)題匯總

Flutter常見(jiàn)問(wèn)題匯總

歡迎加群交流(qq:839981465)

目錄

  1. Mac os 10.15 運(yùn)行‘idevice_id’無(wú)法驗(yàn)證開(kāi)發(fā)者
  2. json數(shù)據(jù)轉(zhuǎn)換
  3. TextField鍵盤(pán)顯示隱藏
  4. 橫豎屏設(shè)置
  5. TextField光標(biāo)文字焦點(diǎn)不對(duì)齊問(wèn)題
  6. ios打包白屏
  7. 圖片充滿父視圖
  8. 運(yùn)行報(bào)錯(cuò):Unhandled Exception: ServicesBinding.defaultBinaryMessenger was accessed before the binding was initialized.
  9. showModalBottomSheet頂部圓角
  10. 限制TextField輸入長(zhǎng)度(使用maxLength會(huì)有counter控件)
  11. 背景圖會(huì)被鍵盤(pán)頂起
  12. ios Cocoapods報(bào)錯(cuò): NoMethodError - undefined method `size' for nil:NilClass
  13. setState更新數(shù)據(jù),PageView、ListView等子控件沒(méi)更新

解決方案

    1. Mac os 10.15 運(yùn)行‘idevice_id’無(wú)法驗(yàn)證開(kāi)發(fā)者


      1576138438797.jpg
sudo xattr -d com.apple.quarantine [your_path]/flutter/bin/cache/artifacts/libimobiledevice/idevice_id
sudo xattr -d com.apple.quarantine [your_path]/flutter/bin/cache/artifacts/libimobiledevice/ideviceinfo
sudo xattr -d com.apple.quarantine [your_path]/flutter/bin/cache/artifacts/libimobiledevice/idevicesyslog
sudo xattr -d com.apple.quarantine [your_path]/flutter/bin/cache/artifacts/usbmuxd/iproxy

替換為自己的路徑

// 使用范例:
var list = json.decode(widget.itemBean.formDefaultValue);
  var items = (list as List).cast().map((value) {
  return Bean.formJson(value);
}).toList();
    1. TextField鍵盤(pán)顯示隱藏
// 顯示鍵盤(pán)
focusNode.requestFocus();
// 隱藏鍵盤(pán)
focusNode.unfocus();
    1. 橫豎屏設(shè)置
SystemChrome.setPreferredOrientations([
    DeviceOrientation.portraitUp,
    DeviceOrientation.portraitDown
  ]);
runApp(MyApp());
    1. TextField光標(biāo)文字焦點(diǎn)不對(duì)齊問(wèn)題
TextField(
   style: TextStyle(textBaseline: TextBaseline.alphabetic),
)
    1. ios打包白屏
1. 在項(xiàng)目下終端運(yùn)行:
flutter build ios --release
2. 在Xcode中打開(kāi)項(xiàng)目, Product -> Archive 即可 
  1. 圖片充滿父視圖
ConstrainedBox(
        child: Image.asset(
                  AssetImages.start2,
                  fit: BoxFit.cover,
                  ),
        constraints: new BoxConstraints.expand(),
       )
  1. 運(yùn)行報(bào)錯(cuò):Unhandled Exception: ServicesBinding.defaultBinaryMessenger was accessed before the binding was initialized.
void main() {
  // 加上這句即可
  WidgetsFlutterBinding.ensureInitialized();
  //
  runApp(MyApp());
}
  1. showModalBottomSheet頂部圓角
    showModalBottomSheet(
      context: context,
      shape: RoundedRectangleBorder(
        borderRadius: BorderRadius.circular(10),
      ),
      builder: (context) {
        return Container();
      },
    )
  1. 限制TextField輸入長(zhǎng)度(使用maxLength會(huì)有counter控件)
inputFormatters: <TextInputFormatter>[
          LengthLimitingTextInputFormatter(6)
        ],
  1. 背景圖會(huì)被鍵盤(pán)頂起
Scaffold中設(shè)置:
resizeToAvoidBottomInset: false,
  1. ios Cocoapods報(bào)錯(cuò): NoMethodError - undefined method `size' for nil:NilClass
flutter clean
rm -Rf ios/Pods
rm -Rf ios/.symlinks
rm -Rf ios/Flutter/Flutter.framework
rm -Rf ios/Flutter/Flutter.podspec
rm -Rf ios/Podfile.lock /// 加上這個(gè)
  1. setState更新數(shù)據(jù),PageView、ListView等子控件沒(méi)更新
    詳見(jiàn):http://www.itdecent.cn/p/977e1448f95d
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

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