Web Analytics
Nhảy tới nội dung

registerWithImage

Kích hoạt screenguard với một chế độ xem hình ảnh tùy chỉnh và màu nền.

Sử dụng ImageView với SDWebImage trên iOSGlide trên Android để tải nhanh hơn và lưu bộ nhớ đệm.

Yêu cầu v2.0.0+

Bạn phải gọi initSettings() trước khi sử dụng hàm này.

Tham số

Nhận một đối tượng JS với các tham số sau:

TênBắt buộcKiểuMặc địnhMô tả
sourceBẮT BUỘCObjectNguồn của hình ảnh. Có thể là URI mạng hoặc asset cục bộ. Hỗ trợ: jpg, jpeg, png, gif, bmp, webp, svg. Cách dùng: source: { uri: 'https://...' } hoặc source: require('./image.png')
widthBẮT BUỘCnumberChiều rộng của hình ảnh
heightBẮT BUỘCnumberChiều cao của hình ảnh
defaultSourceKhôngObjectHình ảnh dự phòng nếu source không tải được. Cách dùng: defaultSource: require('./fallback.png')
backgroundColorKhôngstring'#000000'Màu nền phía sau hình ảnh
alignmentKhôngnumber4 (center)Vị trí của hình ảnh (0-8). Xem giá trị căn lề
topKhôngnumberVị trí top tùy chỉnh
leftKhôngnumberVị trí left tùy chỉnh
bottomKhôngnumberVị trí bottom tùy chỉnh
rightKhôngnumberVị trí right tùy chỉnh
timeAfterResumeKhôngnumber1000⚠️ Đã gỡ bỏ trong v2.0.0 - Sử dụng initSettings() thay thế

Cập nhật v2.0.0: Trong v1.x, timeAfterResume được truyền trực tiếp vào registerWithImage(). Bắt đầu từ v2.0.0, hãy thiết lập nó trong initSettings().

alignment

Giá trịVị trí
0topLeft
1topCenter
2topRight
3centerLeft
4center (mặc định)
5centerRight
6bottomLeft
7bottomCenter
8bottomRight
Lưu ý
  • Ném ngoại lệ khi alignment không nằm trong khoảng 0-8 hoặc là NaN.
  • Không thể kết hợp alignment với các tham số vị trí (top, left, bottom, right) - alignment sẽ được kiểm tra trước.
  • Đặt alignment thành null nếu bạn muốn sử dụng các tham số vị trí tùy chỉnh.

Code mẫu

Sử dụng hình ảnh mạng:

import ScreenGuardModule from 'react-native-screenguard';

// Khởi tạo trước (bắt buộc trong v2.0.0+)
await ScreenGuardModule.initSettings({
displayScreenGuardOverlay: true,
timeAfterResume: 2000,
});

// Với hình ảnh mạng và hình ảnh dự phòng
await ScreenGuardModule.registerWithImage({
height: 150,
width: 200,
source: {
uri: 'https://example.com/image.gif',
},
defaultSource: require('./images/fallback.png'),
backgroundColor: '#1a1a2e',
alignment: 4, // center
});

Sử dụng hình ảnh cục bộ:

await ScreenGuardModule.registerWithImage({
height: 150,
width: 200,
source: require('./images/logo.png'),
backgroundColor: '#1a1a2e',
});

Sử dụng vị trí tùy chỉnh:

await ScreenGuardModule.registerWithImage({
height: 150,
width: 200,
source: require('./images/logo.png'),
backgroundColor: '#1a1a2e',
alignment: null, // Phải để null để dùng vị trí tùy chỉnh
top: 50,
left: 50,
});
Lưu ý Android

Trên Android, nếu displayScreenguardOverlayAndroid được đặt thành false trong initSettings(), việc gọi registerWithImage() sẽ tự động chuyển sang registerWithoutEffect().

Demo

iOS

Android