Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/102.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
“复制、粘贴和剪切”对话框不适用于Flitter中的iOS_Ios_Flutter_Dart_Flutter Layout - Fatal编程技术网

“复制、粘贴和剪切”对话框不适用于Flitter中的iOS

“复制、粘贴和剪切”对话框不适用于Flitter中的iOS,ios,flutter,dart,flutter-layout,Ios,Flutter,Dart,Flutter Layout,正如您在图片中所看到的,当我试图双击文本字段以显示复制粘贴对话框时,它会在终端上显示此问题 ' ══════ Exception caught by widgets library ═══════════════════════════════════════════════════════ The getter 'pasteButtonLabel' was called on null. Receiver: null Tried calling: pasteButtonLabel Th

正如您在图片中所看到的,当我试图双击文本字段以显示复制粘贴对话框时,它会在终端上显示此问题

'
    ══════ Exception caught by widgets library ═══════════════════════════════════════════════════════
The getter 'pasteButtonLabel' was called on null.
Receiver: null
Tried calling: pasteButtonLabel
The relevant error-causing widget was: 
  MaterialApp file:///Users/home/Desktop/the%20authentic%20home%20final/theauthentichome/lib/main.dart:136:22
════════════════════════════════════════════════════════════════════════════════════════════════════'
请看下面的图片,以便更好地了解这个问题

The main.dart file : 

'import 'dart:async';
import 'dart:io';
import 'package:admob_flutter/admob_flutter.dart';
import 'package:flutterstore/config/router.dart' as router;
import 'package:dynamic_theme/dynamic_theme.dart';
import 'package:flutterstore/provider/ps_provider_dependencies.dart';
import 'package:flutterstore/viewobject/common/language.dart';
import 'package:firebase_messaging/firebase_messaging.dart';
import 'package:flutter/material.dart';
import 'package:provider/provider.dart';
import 'package:flutter_localizations/flutter_localizations.dart';
import 'package:provider/single_child_widget.dart';
import 'package:shared_preferences/shared_preferences.dart';
import 'package:flutterstore/config/ps_theme_data.dart';
import 'package:flutterstore/provider/common/ps_theme_provider.dart';
import 'package:flutterstore/repository/ps_theme_repository.dart';
import 'package:flutterstore/utils/utils.dart';
import 'package:easy_localization/easy_localization.dart';
import 'config/ps_colors.dart';
import 'config/ps_config.dart';
import 'db/common/ps_shared_preferences.dart';

Future<void> main() async {
  // add this, and it should be the first line in main method
  WidgetsFlutterBinding.ensureInitialized();

  final FirebaseMessaging _fcm = FirebaseMessaging();
  if (Platform.isIOS) {
    _fcm.requestNotificationPermissions(const IosNotificationSettings());
  }

  final SharedPreferences prefs = await SharedPreferences.getInstance();

  if (prefs.getString('codeC') == null) {
    await prefs.setString('codeC', null);
    await prefs.setString('codeL', null);
  }

  Admob.initialize(Utils.getAdAppId());

  //check is apple signin is available
  await Utils.checkAppleSignInAvailable();


  runApp(EasyLocalization(
      path: 'assets/langs',
      startLocale: PsConfig.defaultLanguage.toLocale(),
      supportedLocales: getSupportedLanguages(),
      child: PSApp()));
}

List<Locale> getSupportedLanguages() {
  final List<Locale> localeList = <Locale>[];
  for (final Language lang in PsConfig.psSupportedLanguageList) {
    localeList.add(Locale(lang.languageCode, lang.countryCode));
  }
  print('Loaded Languages');
  return localeList;
}

class PSApp extends StatefulWidget {
  @override
  _PSAppState createState() => _PSAppState();
}

Future<dynamic> initAds() async {
  if (PsConfig.showAdMob && await Utils.checkInternetConnectivity()) {
    // FirebaseAdMob.instance.initialize(appId: Utils.getAdAppId());
  }
}

class _PSAppState extends State<PSApp> {
  Completer<ThemeData> themeDataCompleter;
  PsSharedPreferences psSharedPreferences;

  @override
  void initState() {
    super.initState();
  }

  Future<ThemeData> getSharePerference(
      EasyLocalization provider, dynamic data) {
    Utils.psPrint('>> get share perference');
    if (themeDataCompleter == null) {
      Utils.psPrint('init completer');
      themeDataCompleter = Completer<ThemeData>();
    }

    if (psSharedPreferences == null) {
      Utils.psPrint('init ps shareperferences');
      psSharedPreferences = PsSharedPreferences.instance;
      Utils.psPrint('get shared');
      psSharedPreferences.futureShared.then((SharedPreferences sh) {
        psSharedPreferences.shared = sh;

        Utils.psPrint('init theme provider');
        final PsThemeProvider psThemeProvider = PsThemeProvider(
            repo: PsThemeRepository(psSharedPreferences: psSharedPreferences));

        Utils.psPrint('get theme');
        final ThemeData themeData = psThemeProvider.getTheme();
        themeDataCompleter.complete(themeData);
        Utils.psPrint('themedata loading completed');
      });
    }

    return themeDataCompleter.future;
  }

  List<Locale> getSupportedLanguages() {
    final List<Locale> localeList = <Locale>[];
    for (final Language lang in PsConfig.psSupportedLanguageList) {
      localeList.add(Locale(lang.languageCode, lang.countryCode));
    }
    print('Loaded Languages');
    return localeList;
  }

  @override
  Widget build(BuildContext context) {
    // init Color
    PsColors.loadColor(context);
    return MultiProvider(
        providers: <SingleChildWidget>[
          ...providers,
        ],
        child: DynamicTheme(
            defaultBrightness: Brightness.light,
            data: (Brightness brightness) {
              if (brightness == Brightness.light) {
                return themeData(ThemeData.light());
              } else {
                return themeData(ThemeData.dark());
              }
            },
            themedWidgetBuilder: (BuildContext context, ThemeData theme) {
              return MaterialApp(
                debugShowCheckedModeBanner: false,
                title: 'مفرشي',
                theme: theme,
                initialRoute: '/',
                onGenerateRoute: router.generateRoute,
                localizationsDelegates: <LocalizationsDelegate<dynamic>>[
                  GlobalMaterialLocalizations.delegate,
                  GlobalWidgetsLocalizations.delegate,
                  EasyLocalization.of(context).delegate,
                ],
                supportedLocales: EasyLocalization.of(context).supportedLocales,
                locale: EasyLocalization.of(context).locale,
              );
            }));
  }
}'
main.dart文件:
'导入'dart:async';
导入“dart:io”;
进口“包装:admob_flight/admob_flight.dart”;
导入“package:flotterstore/config/router.dart”作为路由器;
导入“package:dynamic_theme/dynamic_theme.dart”;
导入“package:Store/provider/ps_provider_dependencies.dart”;
导入“package:flotterstore/viewobject/common/language.dart”;
导入“package:firebase_messaging/firebase_messaging.dart”;
进口“包装:颤振/材料.省道”;
导入“包:provider/provider.dart”;
导入“package:flatter_本地化/flatter_本地化.dart”;
导入“package:provider/single_child_widget.dart”;
导入“package:shared_preferences/shared_preferences.dart”;
导入“package:flotterstore/config/ps_theme_data.dart”;
导入“包:flatterstore/provider/common/ps_theme_provider.dart”;
导入“package:flotterstore/repository/ps_theme_repository.dart”;
导入“package:flotterstore/utils/utils.dart”;
导入“package:easy_localization/easy_localization.dart”;
导入'config/ps_colors.dart';
导入'config/ps_config.dart';
导入“db/common/ps_shared_preferences.dart”;
Future main()异步{
//添加这个,它应该是main方法中的第一行
WidgetsFlutterBinding.ensureInitialized();
最终FirebaseMessaging_fcm=FirebaseMessaging();
if(Platform.isIOS){
_fcm.requestNotificationPermissions(const ioNotificationSettings());
}
final SharedReferences prefs=等待SharedReferences.getInstance();
if(prefs.getString('codeC')==null){
wait prefs.setString('codeC',null);
wait prefs.setString('codeL',null);
}
初始化(Utils.getAdAppId());
//检查苹果登录是否可用
wait Utils.checkAppleSignInAvailable();
runApp(易本地化)(
路径:“资产/语言”,
startLocale:PsConfig.defaultLanguage.toLocale(),
supportedLocales:getSupportedLanguages(),
child:PSApp());
}
列出getSupportedLanguages(){
最终列表localeList=[];
for(PsConfig.psSupportedLanguageList中的最终语言lang){
add(Locale(lang.languageCode,lang.countryCode));
}
打印(“加载的语言”);
返回localeList;
}
类PSApp扩展了StatefulWidget{
@凌驾
_PSAppState createState()=>\u PSAppState();
}
Future initAds()异步{
if(PsConfig.showAdMob&&wait Utils.checkInternetConnectivity()){
//FirebaseAdMob.instance.initialize(appId:Utils.getAdAppId());
}
}
类_PSAppState扩展状态{
完成者主题完成者;
PsSharedPreferences PsSharedPreferences;
@凌驾
void initState(){
super.initState();
}
未来getSharePerference(
EasyLocalization提供程序(动态数据){
Utils.psPrint(“>>获取共享性能”);
如果(主题数据完成器==null){
Utils.psPrint('init completer');
主题数据完成器=完成器();
}
如果(psSharedPreferences==null){
Utils.psPrint('init ps shareperferences');
psSharedPreferences=psSharedPreferences.instance;
Utils.psPrint('get shared');
psSharedPreferences.futureShared.then((SharedPreferences sh){
psSharedPreferences.shared=sh;
Utils.psPrint('init主题提供程序');
最终PsThemeProvider PsThemeProvider=PsThemeProvider(
回购:PsThemeRepository(psSharedPreferences:psSharedPreferences));
Utils.psPrint('get theme');
final-ThemeData-ThemeData=psThemeProvider.getTheme();
主题数据完成器。完成(主题数据);
Utils.psPrint(“主题数据加载完成”);
});
}
返回主题为datacompleter.future;
}
列出getSupportedLanguages(){
最终列表localeList=[];
for(PsConfig.psSupportedLanguageList中的最终语言lang){
add(Locale(lang.languageCode,lang.countryCode));
}
打印(“加载的语言”);
返回localeList;
}
@凌驾
小部件构建(构建上下文){
//初始颜色
PsColors.loadColor(上下文);
回程多供应商(
供应商:[
…供应商,
],
孩子:动态血红素(
defaultBrightness:Brightness.light,
数据:(亮度){
如果(亮度==亮度.灯光){
返回主题数据(themeData.light());
}否则{
返回主题数据(themeData.dark());
}
},
主题WidgetBuilder:(构建上下文,主题数据主题){
返回材料PP(
debugShowCheckedModeBanner:false,
标题:“مفشي”,
主题:主题,,
initialRoute:“/”,
onGenerateRoute:router.generateRoute,
本地化授权:[
GlobalMaterialAllocalizations.delegate,
GlobalWidgetsLocalizations.delegate,
(上下文)委托的易本地化,
],
supportedLocales:EasyLocalization.of(context).supportedLocales,
locale:EasyLocalization.of(context.locale),
);
}));
}
}'
参考图片:


快速的谷歌搜索表明,这可能与可用的本地化连接。您是否尝试过在
MaterialApp
中添加
DefaultCupertinoLocalization.delegate
到您的
localizationsDelegates

(这只是一个猜测,很可能是没有用……

快速的谷歌搜索表明,这可能与可用的本地化有关。您是否尝试在
MaterialApp中添加
defaultcupertinologizations.delegate
到您的
localizationsDelegates