ceryle / RadioRealButton

A custom radio button for Android API 12+
Apache License 2.0
259 stars 73 forks source link

Setting onPositionChangedListener causes Exception #12

Closed daerimin closed 7 years ago

daerimin commented 7 years ago

Code:


RadioRealButtonGroup buttonGroup = (RadioRealButtonGroup) findViewById(R.id.rrbg);
buttonGroup.setOnPositionChangedListener(new RadioRealButtonGroup.OnPositionChangedListener() {
   @Override
   public void onPositionChanged(RadioRealButton button, int position) {
        Log.v("DEBUG", "Button clicked: " + position);
   }
});

01-18 14:47:37.404 31987-31987/com.[redacted] 
E/UncaughtException: java.lang.ArrayIndexOutOfBoundsException: length=12; index=-1
at java.util.ArrayList.get(ArrayList.java:310)
at co.ceryle.radiorealbutton.library.RadioRealButtonGroup.setPosition(RadioRealButtonGroup.java:399)
at co.ceryle.radiorealbutton.library.RadioRealButtonGroup.onLayout(RadioRealButtonGroup.java:376)
at android.view.View.layout(View.java:16630)
at android.view.ViewGroup.layout(ViewGroup.java:5437)
at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1743)
at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1586)
at android.widget.LinearLayout.onLayout(LinearLayout.java:1495)
at android.view.View.layout(View.java:16630)
at android.view.ViewGroup.layout(ViewGroup.java:5437)
at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1743)
....

There's a lot more to the trace if you need it.
ceryle commented 7 years ago

Thanks, no extra log needed. It will be fixed on the next release.

ceryle commented 7 years ago

Hi, I released a new version which is v1.5.0, and exception is gone now.