Skip to content

Commit df13238

Browse files
committed
update
update
1 parent be97a27 commit df13238

File tree

2 files changed

+17
-18
lines changed

2 files changed

+17
-18
lines changed

src/main/java/com/higo/zhangyp/segmented/AndroidSegmentedEvent.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ public short getCoalescingKey() {
4040

4141
private WritableMap serializeEventData() {
4242
WritableMap eventData = Arguments.createMap();
43-
eventData.putInt("target", getViewTag());
43+
// eventData.putInt("target", getViewTag());
4444
eventData.putInt("selected", getPosition());
4545
Log.e("AAA","position="+getPosition());
4646

src/main/java/com/higo/zhangyp/segmented/AndroidSegmentedManager.java

+16-17
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
import android.content.Context;
44
import android.graphics.Color;
55
import android.os.SystemClock;
6-
import android.util.Log;
76
import android.view.LayoutInflater;
87
import android.widget.RadioButton;
98
import android.widget.RadioGroup;
@@ -38,28 +37,28 @@ protected AndroidSegmented createViewInstance(ThemedReactContext reactContext) {
3837
}
3938

4039

41-
private int position;
42-
4340
@Override
4441
protected void addEventEmitters(final ThemedReactContext reactContext, final AndroidSegmented view) {
4542

4643
view.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
4744
@Override
4845
public void onCheckedChanged(RadioGroup group, int checkedId) {
46+
4947
int childCount = view.getChildCount();
50-
for (int i=0;i<childCount;i++){
51-
if(view.getChildAt(i).getId()==checkedId){
52-
position = i;
48+
for (int i = 0; i < childCount; i++) {
49+
((RadioButton)view.getChildAt(i)).setChecked(false);
50+
if (view.getChildAt(i).getId() == checkedId) {
51+
((RadioButton)view.getChildAt(i)).setChecked(true);
52+
53+
54+
reactContext.getNativeModule(UIManagerModule.class).getEventDispatcher()
55+
.dispatchEvent(
56+
new AndroidSegmentedEvent(
57+
view.getId(),
58+
SystemClock.uptimeMillis(),
59+
i));
5360
}
5461
}
55-
reactContext.getNativeModule(UIManagerModule.class).getEventDispatcher()
56-
.dispatchEvent(
57-
new AndroidSegmentedEvent(
58-
view.getId(),
59-
SystemClock.uptimeMillis(),
60-
position));
61-
62-
6362
}
6463
});
6564

@@ -70,21 +69,21 @@ public void onCheckedChanged(RadioGroup group, int checkedId) {
7069
@ReactProp(name = "childText")
7170
public void setChildText(AndroidSegmented view, ReadableArray data) {
7271
int childCount = data.size();
73-
Log.e("TAG", "___" + childCount);
7472

75-
for (int i = 0; i < childCount; i++) {
73+
for (int i = 0; i < childCount; ++i) {
7674
RadioButton child = (RadioButton) LayoutInflater.from(context).inflate(R.layout.radio_button, null);
7775

7876
child.setText(data.getString(i));
7977
view.addView(child);
8078

79+
8180
}
8281
}
8382

8483

8584
@ReactProp(name = "selectedPosition")
8685
public void setSelectedChild(AndroidSegmented view, int position) {
87-
RadioButton radioBt= (RadioButton)(view.getChildAt(position));
86+
RadioButton radioBt = (RadioButton) (view.getChildAt(position));
8887
radioBt.setChecked(true);
8988
}
9089

0 commit comments

Comments
 (0)