forked from dominicstop/react-native-ios-context-menu
-
Notifications
You must be signed in to change notification settings - Fork 0
/
ContextMenuViewExample27.tsx
103 lines (98 loc) · 3.23 KB
/
ContextMenuViewExample27.tsx
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
import * as React from 'react';
import { ContextMenuView } from 'react-native-ios-context-menu';
import type { ContextMenuExampleProps } from './SharedExampleTypes';
import { ContextMenuCard } from '../components/ContextMenuCard';
export function ContextMenuViewExample27(props: ContextMenuExampleProps) {
return (
<ContextMenuView
style={props.style}
menuConfig={{
menuTitle: 'ContextMenuViewExample27',
menuItems: [{
actionKey : 'key-01' ,
actionTitle: 'Action #1',
actionSubtitle: 'fallbackBehavior: whileNotLoaded',
icon: {
type: 'IMAGE_REMOTE_URL',
imageValue: {
url: 'https://fake.url.com/asset-1',
fallbackImage: {
type: 'IMAGE_SYSTEM',
imageValue: {
systemName: 'trash',
},
},
},
imageLoadingConfig: {
// will use the fallback image while the remote
// image hasn't been loaded yet
fallbackBehavior: 'whileNotLoaded',
shouldLazyLoad: true,
shouldImmediatelyRetryLoading: true,
maxRetryAttempts: 20,
},
},
}, {
actionKey : 'key-02' ,
actionTitle: 'Action #2',
actionSubtitle: 'fallbackBehavior: onLoadError',
icon: {
type: 'IMAGE_REMOTE_URL',
imageValue: {
url: 'https://fake.url.com/asset-2',
fallbackImage: {
type: 'IMAGE_SYSTEM',
imageValue: {
systemName: 'trash',
},
},
},
imageLoadingConfig: {
// will use the fallback image when it encounters
// an error whe loading the remote image
fallbackBehavior: 'onLoadError',
shouldLazyLoad: true,
shouldImmediatelyRetryLoading: true,
maxRetryAttempts: 20,
},
}
}, {
actionKey : 'key-03' ,
actionTitle: 'Action #3',
actionSubtitle: 'fallbackBehavior: afterFinalAttempt',
icon: {
type: 'IMAGE_REMOTE_URL',
imageValue: {
url: 'https://fake.url.com/asset-3',
fallbackImage: {
type: 'IMAGE_SYSTEM',
imageValue: {
systemName: 'trash',
},
},
},
imageLoadingConfig: {
// will use the fallback image when it encounters
// an error whe loading the remote image, and the
// number of loading attempts exceeds
// `maxRetryAttempts`
fallbackBehavior: 'afterFinalAttempt',
shouldLazyLoad: true,
shouldImmediatelyRetryLoading: true,
maxRetryAttempts: 20,
},
}
}],
}}
>
<ContextMenuCard
index={props.index}
title={'ContextMenuViewExample27'}
subtitle={'ImageType Icons'}
description={[
`Context menu with actions that uses 'IMAGE_REMOTE_URL' icons`
]}
/>
</ContextMenuView>
);
};