Skip to content

Commit cd90663

Browse files
committed
add SpinnerStyleModule
1 parent 4c6ea9a commit cd90663

3 files changed

Lines changed: 77 additions & 1 deletion

File tree

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
package com.lmy.smartrefreshlayout;
2+
3+
import com.facebook.react.bridge.ReactApplicationContext;
4+
import com.facebook.react.bridge.ReactContextBaseJavaModule;
5+
import com.scwang.smartrefresh.layout.constant.SpinnerStyle;
6+
7+
import java.util.Collections;
8+
import java.util.HashMap;
9+
import java.util.Map;
10+
11+
import javax.annotation.Nullable;
12+
13+
/**
14+
* Created by macbook on 2018/6/13.
15+
*/
16+
17+
public class RCTSpinnerStyleModule extends ReactContextBaseJavaModule {
18+
private static final String MODULE_NAME = "RCTSpinnerStyleModule";
19+
20+
public RCTSpinnerStyleModule(ReactApplicationContext reactContext) {
21+
super(reactContext);
22+
}
23+
24+
@Override
25+
public String getName() {
26+
return MODULE_NAME;
27+
}
28+
29+
/**
30+
*
31+
*Translate,//平行移动 特点: HeaderView高度不会改变,
32+
*Scale,//拉伸形变 特点:在下拉和上弹(HeaderView高度改变)时候,会自动触发OnDraw事件
33+
*FixedBehind,//固定在背后 特点:HeaderView高度不会改变,
34+
*FixedFront,//固定在前面 特点:HeaderView高度不会改变,
35+
*MatchLayout//填满布局
36+
*
37+
* @return
38+
*/
39+
@Nullable
40+
@Override
41+
public Map<String, Object> getConstants() {
42+
return Collections.unmodifiableMap(new HashMap<String, Object>(){{
43+
put("translate", SpinnerStyleConstants.TRANSLATE);
44+
put("fixBehind",SpinnerStyleConstants.FIX_BEHIND);
45+
put("fixFront",SpinnerStyleConstants.FIX_FRONT);
46+
put("scale",SpinnerStyleConstants.SCALE);
47+
put("matchLayout",SpinnerStyleConstants.MATCH_LAYOUT);
48+
}});
49+
}
50+
}

android/src/main/java/com/lmy/smartrefreshlayout/SmartRefreshLayoutPackage.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,9 @@
2222
public class SmartRefreshLayoutPackage implements ReactPackage {
2323
@Override
2424
public List<NativeModule> createNativeModules(ReactApplicationContext reactContext) {
25-
return Collections.emptyList();
25+
return Arrays.<NativeModule>asList(
26+
new RCTSpinnerStyleModule(reactContext)
27+
);
2628
}
2729
//@Override >=0.47已经过期
2830
public List<Class<? extends JavaScriptModule>> createJSModules() {
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
package com.lmy.smartrefreshlayout;
2+
3+
import com.scwang.smartrefresh.layout.constant.SpinnerStyle;
4+
5+
import java.util.HashMap;
6+
7+
/**
8+
* Created by macbook on 2018/6/13.
9+
*/
10+
11+
public class SpinnerStyleConstants {
12+
public static final String TRANSLATE = "translate";
13+
public static final String FIX_BEHIND = "fixBehind";
14+
public static final String SCALE = "scale";
15+
public static final String FIX_FRONT = "fixFront";
16+
public static final String MATCH_LAYOUT = "matchLayout";
17+
public static final HashMap<String,SpinnerStyle> SpinnerStyleMap = new HashMap<String,SpinnerStyle>(){{
18+
put(TRANSLATE,SpinnerStyle.Translate);
19+
put(FIX_BEHIND,SpinnerStyle.FixedBehind);
20+
put(SCALE,SpinnerStyle.Scale);
21+
put(MATCH_LAYOUT,SpinnerStyle.MatchLayout);
22+
put(FIX_FRONT,SpinnerStyle.FixedFront);
23+
}};
24+
}

0 commit comments

Comments
 (0)