@@ -11,7 +11,6 @@ import 'package:flutter/services.dart';
11
11
12
12
import '../constants/config.dart' ;
13
13
import '../constants/constants.dart' ;
14
- import '../delegates/camera_picker_text_delegate.dart' ;
15
14
import '../states/camera_picker_state.dart' ;
16
15
17
16
import 'camera_picker_page_route.dart' ;
@@ -22,10 +21,11 @@ import 'camera_picker_page_route.dart';
22
21
/// The picker provides create an [AssetEntity] through the [CameraController] .
23
22
/// 该选择器可以通过 [CameraController] 创建 [AssetEntity] 。
24
23
class CameraPicker extends StatefulWidget {
25
- const CameraPicker ._ ({
24
+ const CameraPicker ({
26
25
Key ? key,
27
26
this .pickerConfig = const CameraPickerConfig (),
28
27
this .createPickerState,
28
+ this .locale,
29
29
}) : super (key: key);
30
30
31
31
/// {@macro wechat_camera_picker.CameraPickerConfig}
@@ -35,6 +35,9 @@ class CameraPicker extends StatefulWidget {
35
35
/// 构建一个自定义的 [CameraPickerState] 。
36
36
final CameraPickerState Function ()? createPickerState;
37
37
38
+ /// The [Locale] to determine text delegates for the picker.
39
+ final Locale ? locale;
40
+
38
41
/// Static method to create [AssetEntity] through camera.
39
42
/// 通过相机创建 [AssetEntity] 的静态方法
40
43
static Future <AssetEntity ?> pickFromCamera (
@@ -46,13 +49,10 @@ class CameraPicker extends StatefulWidget {
46
49
pageRouteBuilder,
47
50
Locale ? locale,
48
51
}) {
49
- Constants .textDelegate = pickerConfig.textDelegate ??
50
- cameraPickerTextDelegateFromLocale (
51
- locale ?? Localizations .maybeLocaleOf (context),
52
- );
53
- final Widget picker = CameraPicker ._(
52
+ final Widget picker = CameraPicker (
54
53
pickerConfig: pickerConfig,
55
54
createPickerState: createPickerState,
55
+ locale: locale,
56
56
);
57
57
return Navigator .of (
58
58
context,
@@ -111,5 +111,5 @@ class CameraPicker extends StatefulWidget {
111
111
@override
112
112
CameraPickerState createState () =>
113
113
// ignore: no_logic_in_create_state
114
- createPickerState? .call () ?? CameraPickerState ();
114
+ createPickerState? .call () ?? CameraPickerState (locale : locale );
115
115
}
0 commit comments