vinc3m1 / android-segmentedradiobutton

Android implementation of iPhone's segmented control
485 stars 160 forks source link

Does not work on HTC phones #1

Closed Nyceane closed 12 years ago

Nyceane commented 13 years ago

this only have problems on HTC phones and tablets

09-06 20:11:57.705: ERROR/AndroidRuntime(15335): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.makeramen.segmented/com.makeramen.segmented.SegmentedRadioActivity}: android.view.InflateException: Binary XML file line #61: Error inflating class com.makeramen.segmented.CenteredRadioImageButton 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1992) 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2013) 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): at android.app.ActivityThread.access$500(ActivityThread.java:134) 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1119) 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): at android.os.Handler.dispatchMessage(Handler.java:99) 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): at android.os.Looper.loop(Looper.java:152) 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): at android.app.ActivityThread.main(ActivityThread.java:4618) 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): at java.lang.reflect.Method.invokeNative(Native Method) 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): at java.lang.reflect.Method.invoke(Method.java:491) 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:841) 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:599) 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): at dalvik.system.NativeStart.main(Native Method) 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): Caused by: android.view.InflateException: Binary XML file line #61: Error inflating class com.makeramen.segmented.CenteredRadioImageButton 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): at android.view.LayoutInflater.createView(LayoutInflater.java:596) 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:671) 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): at android.view.LayoutInflater.rInflate(LayoutInflater.java:724) 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): at android.view.LayoutInflater.rInflate(LayoutInflater.java:727) 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): at android.view.LayoutInflater.inflate(LayoutInflater.java:479) 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): at android.view.LayoutInflater.inflate(LayoutInflater.java:391) 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): at android.view.LayoutInflater.inflate(LayoutInflater.java:347) 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:237) 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): at android.app.Activity.setContentView(Activity.java:1871) 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): at com.makeramen.segmented.SegmentedRadioActivity.onCreate(SegmentedRadioActivity.java:35) 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): at android.app.Activity.performCreate(Activity.java:4521) 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1072) 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1956) 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): ... 11 more 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): Caused by: java.lang.reflect.InvocationTargetException 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): at java.lang.reflect.Constructor.constructNative(Native Method) 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): at java.lang.reflect.Constructor.newInstance(Constructor.java:416) 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): at android.view.LayoutInflater.createView(LayoutInflater.java:576) 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): ... 23 more 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): Caused by: android.content.res.Resources$NotFoundException: File from drawable resource ID #0x1020004 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): at android.content.res.Resources.loadDrawable(Resources.java:2031) 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): at android.content.res.Resources.getDrawable(Resources.java:671) 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): at android.widget.CompoundButton.setButtonDrawable(CompoundButton.java:183) 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): at com.makeramen.segmented.CenteredRadioImageButton.(CenteredRadioImageButton.java:34) 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): ... 26 more 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): Caused by: java.io.FileNotFoundException: 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): at android.content.res.AssetManager.openNonAssetNative(Native Method) 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): at android.content.res.AssetManager.openNonAsset(AssetManager.java:453) 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): at android.content.res.Resources.loadDrawable(Resources.java:2023) 09-06 20:11:57.705: ERROR/AndroidRuntime(15335): ... 29 more

vinc3m1 commented 13 years ago

Is this a HTC Sense UI ROM? I'm running a Nexus One with (almost) stock 2.3.4 and it hasn't caused any problems. I don't have a device to test this on, but if you have any ideas on how to fix it, feel free to make pull requests.

Nyceane commented 12 years ago

Try it on Evo or flier

vinc3m1 commented 12 years ago

I don't have any extra phones to test :\ but like I said, if anyone wants to fix and make a pull request, go for it.

Nyceane commented 12 years ago

seems to be something to do with asset on the SenseUI, where are you located? I can lend you a phone

vinc3m1 commented 12 years ago

I'm in Mountain View, might be in SF this coming weekend?

Nyceane commented 12 years ago

I live in SF, let's meet up and fix this problem =)

theanshul commented 12 years ago

To remove this exception:

In CenteredRadioImageButton, remove line: setButtonDrawable(android.R.id.empty);

other impact: Images on the radio button will become left align after the above change

theanshul commented 12 years ago

Issue Resolution:

In CenteredRadioImageButton

Replace: setButtonDrawable(android.R.id.empty);

With: setButtonDrawable(android.R.color.transparent);

vinc3m1 commented 12 years ago

fix applied, please test and close if it worked!

Nyceane commented 12 years ago

will try tonight after work, been really busy

vinc3m1 commented 12 years ago

closing due to lack of response, feel free to reopen if issue isn't fixed.