- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - phát hiện rò rỉ bộ nhớ Ruby/Ruby on Rails
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
起初我从 this tutorial 实现 l10n到 Flutter 的模板项目文件,这是成功的。之后,我尝试将 MyHomePage
类移动到名为 home.dart
的新文件中。它停止工作是因为当我调用 Translations.of(context)
时它返回 vô giá trị
。 main.dart
Và home.dart
TRONG BuildContext
有什么区别?
本地化.dart
import 'dart:async';
import 'dart:convert';
nhập 'gói:flutter/material.dart';
import 'package:flutter/services.dart';
class Translations {
final Locale locale;
Map _messages;
Translations(this.locale);
static Translations of(BuildContext context) => Localizations.of(context, Translations);
Future load() async {
String fileName = 'lang/${locale.languageCode}.json';
String data = await rootBundle.loadString(fileName);
_messages = json.decode(data);
trả về giá trị đúng;
}
String get(String key) => _messages[key] ?? "** $key not found";
}
class TranslationsDelegate extends LocalizationsDelegate {
@ghi đè
bool isSupported(Locale locale) => ['en', 'id'].contains(locale.languageCode);
@ghi đè
Future load(Locale locale) async {
Translations translations = new Translations(locale);
await translations.load();
return translations;
}
@ghi đè
bool shouldReload(LocalizationsDelegate old) => false;
}
主.dart
nhập 'gói:flutter/material.dart';
import 'package:flutter_localizations/flutter_localizations.dart';
import 'components/localization.dart';
import 'components/theme.dart';
import 'views/home.dart';
void main() => runApp(new MyApp());
lớp MyApp mở rộng StatelessWidget {
// Tiện ích này là gốc của ứng dụng của bạn.
@ghi đè
Xây dựng tiện ích (BuildContext context) {
trả về MaterialApp mới(
onGenerateTitle: (BuildContext context) {
print(context);
return Translations.of(context).get('app_name');
},
theme: appTheme,
home: MyHomePage(
title: "Coba",
),
debugShowCheckedModeBanner: sai,
localizationsDelegates: [
TranslationsDelegate(),
GlobalMaterialLocalizations.delegate,
GlobalWidgetsLocalizations.delegate
],
supportedLocales: [
Locale("en", ""),
Locale("id", ""),
],
);
}
}
家.飞镖
nhập 'gói:flutter/material.dart';
import 'package:kpop_idol/components/localization.dart';
lớp MyHomePage mở rộng StatefulWidget {
MyHomePage({Key key, this.title}) : super(key: key);
final String title;
@ghi đè
_MyHomePageState createState() => new _MyHomePageState();
}
class _MyHomePageState extends State {
@ghi đè
Xây dựng tiện ích (BuildContext context) {
trả lại Scaffold mới(
appBar: AppBar mới(
title: new Text(widget.title),
),
body: new Center(
child: new Column(
mainAxisAlignment: MainAxisAlignment.center,
trẻ em: [
new Text(
Translations.of(context).get('app_name'),
),
],
),
),
);
}
}
câu trả lời hay nhất
不要在文件 lib/main.dart
中使用相对导入
import 'components/localization.dart';
import 'components/theme.dart';
import 'views/home.dart';
应该是
import 'package:my_package/components/localization.dart';
import 'package:my_package/components/theme.dart';
import 'package:my_package/views/home.dart';
可以点赞关注https://github.com/dart-lang/sdk/issues/33076
关于localization - 将小部件移动到另一个文件后,Flutter Localization 功能不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52117807/
Hôm nay, một người bạn đã nhắn tin cho tôi và hỏi, try{...}catch(){...} nghĩa là gì? Nó được sử dụng để làm gì? Nói một cách đơn giản, chúng được sử dụng để bắt các ngoại lệ. Hãy giải thích chi tiết thông qua một ví dụ.
Tôi đang cố gắng cải thiện khả năng truy cập trang web của mình nhưng tôi không biết cách đánh dấu danh sách các liên kết mạng xã hội ở chân trang. Các liên kết này dẫn đến tài khoản của tôi trên facecook, twitter, v.v. Tôi không muốn đánh dấu những liên kết này bằng role="navigation" vì
Giả sử lúc đó là 6 giờ, tôi có Bộ hẹn giờ và lên lịch cho Bộ hẹn giờ vào lúc 10 giờ. Sau đó, DateTime hệ thống được điều chỉnh thành 9 giờ bởi các dịch vụ khác (chẳng hạn như ntp). Tôi vẫn muốn có TimeTas của mình
Như hiện tại, câu hỏi này không phù hợp với định dạng Hỏi & Đáp của chúng tôi. Chúng tôi hy vọng câu trả lời sẽ được hỗ trợ bởi các sự kiện, trích dẫn hoặc chuyên môn, nhưng câu hỏi có thể gây ra tranh luận, tranh luận, bỏ phiếu hoặc thảo luận mở rộng. Nếu bạn cảm thấy vấn đề này có thể được cải thiện và có thể mở lại, hãy truy cập
Tôi sẽ không nói những điều vô nghĩa nữa. Chúng ta hãy nhìn vào mã ~ 1
Maven Series 1 1. Maven là gì? Maven là một công cụ quản lý dự án có chứa mô hình đối tượng. Một bộ tiêu chuẩn, một hệ thống quản lý phụ thuộc. và được sử dụng để chạy các mục tiêu và logic của plugin được xác định trong các giai đoạn của vòng đời. Chức năng cốt lõiMav
Tôi là một lập trình viên xuất sắc, rất giỏi!