SwitchPreference (PreferenceAtivity) - Android NULL - android

I have a screen preferences, and as such, used the PreferenceActivity, I have everything built and functioning, however a phone (Version 4.1.2) by clicking on the text SwitchPreference (ie anywhere on the row without being in the same switch ) he bursts with a Null Pointer Excetion, but if you click on the same swtich works fine.
What could this be?
error:
E/AndroidRuntime﹕ FATAL EXCEPTION: main
java.lang.NullPointerException
at android.widget.Switch.onPopulateAccessibilityEvent(Switch.java:550)
at android.view.View.dispatchPopulateAccessibilityEventInternal(View.java:4621)
at android.view.View.dispatchPopulateAccessibilityEvent(View.java:4611)
at android.preference.TwoStatePreference.sendAccessibilityEvent(TwoStatePreference.java:197)
at android.preference.SwitchPreference.onBindView(SwitchPreference.java:114)
at android.preference.Preference.getView(Preference.java:463)
at android.preference.PreferenceGroupAdapter.getView(PreferenceGroupAdapter.java:221)
at android.widget.AbsListView.obtainView(AbsListView.java:2308)
at android.widget.ListView.makeAndAddView(ListView.java:1769)
at android.widget.ListView.fillDown(ListView.java:672)
at android.widget.ListView.fillSpecific(ListView.java:1330)
at android.widget.ListView.layoutChildren(ListView.java:1600)
at android.widget.AbsListView.onLayout(AbsListView.java:2143)
at android.view.View.layout(View.java:13850)
at android.view.ViewGroup.layout(ViewGroup.java:4364)
at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1680)
at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1538)
at android.widget.LinearLayout.onLayout(LinearLayout.java:1451)
at android.view.View.layout(View.java:13850)
at android.view.ViewGroup.layout(ViewGroup.java:4364)
at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1680)
at android.widget.LinearLayout.layoutHorizontal(LinearLayout.java:1669)
at android.widget.LinearLayout.onLayout(LinearLayout.java:1453)
at android.view.View.layout(View.java:13850)
at android.view.ViewGroup.layout(ViewGroup.java:4364)
at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1680)
at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1538)
at android.widget.LinearLayout.onLayout(LinearLayout.java:1451)
at android.view.View.layout(View.java:13850)
at android.view.ViewGroup.layout(ViewGroup.java:4364)
at android.widget.FrameLayout.onLayout(FrameLayout.java:448)
at android.view.View.layout(View.java:13850)
at android.view.ViewGroup.layout(ViewGroup.java:4364)
at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1680)
at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1538)
at android.widget.LinearLayout.onLayout(LinearLayout.java:1451)
at android.view.View.layout(View.java:13850)
at android.view.ViewGroup.layout(ViewGroup.java:4364)
at android.widget.FrameLayout.onLayout(FrameLayout.java:448)
at android.view.View.layout(View.java:13850)
at android.view.ViewGroup.layout(ViewGroup.java:4364)
at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:1894)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1710)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1013)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:4245)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:725)
at android.view.Choreographer.doCallbacks(Choreographer.java:555)
at android.view.Choreographer.doFrame(Choreographer.java:525)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:711)
at android.os.Handler.handleCallback(Handler.java:615)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:153)
at android.app.ActivityThread.main(ActivityThread.java:5071)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:790)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:557)
at dalvik.system.NativeStart.main(Native Method)

add this to your custom switchPrefrences component
#Override
protected void onClick() {
// Log.e("CustomSwitchPreferences", "onClick called");
}
Leave it empty and DO NOT call super.onClick();
This will keep your onPrefrenceChange aside from clicks (switch action won't get affected, just the clicks on the row)

Related

Null pointer exception outside my code

I get Null Pointer Exception at open ListActivity in my code but all trace is not my code.
java.lang.NullPointerException at
android.widget.AbsListView.obtainView(AbsListView.java:2606) at
android.widget.ListView.makeAndAddView(ListView.java:1840) at
android.widget.ListView.fillDown(ListView.java:681) at
android.widget.ListView.fillFromTop(ListView.java:742) at
android.widget.ListView.layoutChildren(ListView.java:1661) at
android.widget.AbsListView.onLayout(AbsListView.java:2427) at
android.view.View.layout(View.java:14938) at
android.view.ViewGroup.layout(ViewGroup.java:4601) at
android.widget.RelativeLayout.onLayout(RelativeLayout.java:1021) at
android.view.View.layout(View.java:14938) at
android.view.ViewGroup.layout(ViewGroup.java:4601) at
android.widget.FrameLayout.onLayout(FrameLayout.java:448) at
android.view.View.layout(View.java:14938) at
android.view.ViewGroup.layout(ViewGroup.java:4601) at
android.widget.FrameLayout.onLayout(FrameLayout.java:448) at
android.view.View.layout(View.java:14938) at
android.view.ViewGroup.layout(ViewGroup.java:4601) at
android.widget.LinearLayout.setChildFrame(LinearLayout.java:1694) at
android.widget.LinearLayout.layoutVertical(LinearLayout.java:1552) at
android.widget.LinearLayout.onLayout(LinearLayout.java:1465) at
android.view.View.layout(View.java:14938) at
android.view.ViewGroup.layout(ViewGroup.java:4601) at
android.widget.FrameLayout.onLayout(FrameLayout.java:448) at
android.view.View.layout(View.java:14938) at
android.view.ViewGroup.layout(ViewGroup.java:4601) at
android.view.ViewRootImpl.performLayout(ViewRootImpl.java:2212) at
android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2026)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1236) at
android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:5160)
at
android.view.Choreographer$CallbackRecord.run(Choreographer.java:791)
at android.view.Choreographer.doCallbacks(Choreographer.java:591) at
android.view.Choreographer.doFrame(Choreographer.java:561) at
android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:777)
at android.os.Handler.handleCallback(Handler.java:725) at
android.os.Handler.dispatchMessage(Handler.java:92) at
android.os.Looper.loop(Looper.java:176) at
android.app.ActivityThread.main(ActivityThread.java:5365) at
java.lang.reflect.Method.invokeNative(Native Method) at
java.lang.reflect.Method.invoke(Method.java:511) at
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1102)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:869) at
dalvik.system.NativeStart.main(Native Method)
How I can know where the error occurs?
As #iagreen said, "Specifically, you are returning null from your getView method of your Adapter".
I was returning null in some case in custom adapter in getWiew.

Cause for NullPointerException at android.support.v7.widget.RecyclerView.dispatchLayout

I am getting the following exception from a lot of devices such as
Sumsung GT-I8190N Android: 4.1.2,
Sumsung GT-I8552 Android: 4.1.2,
Sumsung GT-I9300 Android: 4.3,
Sumsung GT-S5830 Android: 2.2.1,
Sumsung GT-S7262 Android: 4.1.2,
LGE LG-P768 Android: 4.0.4,
HUAWEI G610-U20 Android: 4.2.1,
HUAWEI G730-U10 Android: 4.2.2,
etc.
java.lang.NullPointerException
at android.support.v7.widget.RecyclerView.dispatchLayout(SourceFile:2626)
at android.support.v7.widget.RecyclerView.onLayout(SourceFile:3011)
at android.view.View.layout(View.java:13856)
at android.view.ViewGroup.layout(ViewGroup.java:4424)
at android.widget.RelativeLayout.onLayout(RelativeLayout.java:948)
at android.view.View.layout(View.java:13856)
at android.view.ViewGroup.layout(ViewGroup.java:4424)
at android.widget.FrameLayout.onLayout(FrameLayout.java:448)
at android.view.View.layout(View.java:13856)
at android.view.ViewGroup.layout(ViewGroup.java:4424)
at android.widget.RelativeLayout.onLayout(RelativeLayout.java:948)
at android.view.View.layout(View.java:13856)
at android.view.ViewGroup.layout(ViewGroup.java:4424)
at android.support.v4.widget.DrawerLayout.onLayout(SourceFile:907)
at android.view.View.layout(View.java:13856)
at android.view.ViewGroup.layout(ViewGroup.java:4424)
at android.widget.FrameLayout.onLayout(FrameLayout.java:448)
at android.view.View.layout(View.java:13856)
at android.view.ViewGroup.layout(ViewGroup.java:4424)
at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1655)
at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1513)
at android.widget.LinearLayout.onLayout(LinearLayout.java:1426)
at android.view.View.layout(View.java:13856)
at android.view.ViewGroup.layout(ViewGroup.java:4424)
at android.widget.FrameLayout.onLayout(FrameLayout.java:448)
at android.view.View.layout(View.java:13856)
at android.view.ViewGroup.layout(ViewGroup.java:4424)
at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1655)
at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1513)
at android.widget.LinearLayout.onLayout(LinearLayout.java:1426)
at android.view.View.layout(View.java:13856)
at android.view.ViewGroup.layout(ViewGroup.java:4424)
at android.widget.FrameLayout.onLayout(FrameLayout.java:448)
at android.view.View.layout(View.java:13856)
at android.view.ViewGroup.layout(ViewGroup.java:4424)
at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:1992)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1813)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1113)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:4481)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:725)
at android.view.Choreographer.doCallbacks(Choreographer.java:555)
at android.view.Choreographer.doFrame(Choreographer.java:525)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:711)
at android.os.Handler.handleCallback(Handler.java:615)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4856)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1007)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:774)
at dalvik.system.NativeStart.main(Native Method)
Also the support library version is compile 'com.android.support:support-v4:22.2.1'. BTW, I checked that non of findViewById functions return null and search a lot to find the same error in internet but no result is found.
Any idea how to solve this?
Hello I guess this kind of error usually fire when you miss to apply setLayoutManager to your recycler view. Make sure you apply layout manager to your recylver view see below example :
mRecyclerView = (RecyclerView) findViewById(R.id.recyclerView);
LinearLayoutManager layoutManager = new LinearLayoutManager(context);
mRecyclerView.setLayoutManager(layoutManager);
mRecyclerView.setAdapter(new CustomAdapter());

Android crash ClassCastException but no project lines

My Application is crashing on an GT-P5110 Android 4.2.2 Samsung Tab 2 tablet. I'm currently searching all my code but can't find where it is called. I got the error output right here.
I can't find a listview which is casting this problem. I even disabled whole parts. Anyone got an idea?
java.lang.ClassCastException: android.widget.FrameLayout$LayoutParams cannot be cast to android.widget.AbsListView$LayoutParams
at android.widget.ListView.setupChild(ListView.java:1872)
at android.widget.ListView.makeAndAddView(ListView.java:1841)
at android.widget.ListView.fillDown(ListView.java:681)
at android.widget.ListView.fillFromTop(ListView.java:742)
at android.widget.ListView.layoutChildren(ListView.java:1645)
at android.widget.AbsListView.onLayout(AbsListView.java:2511)
at android.view.View.layout(View.java:14694)
at android.view.ViewGroup.layout(ViewGroup.java:4491)
at android.widget.RelativeLayout.onLayout(RelativeLayout.java:1021)
at android.view.View.layout(View.java:14694)
at android.view.ViewGroup.layout(ViewGroup.java:4491)
at android.support.v4.widget.DrawerLayout.onLayout(DrawerLayout.java:931)
at android.view.View.layout(View.java:14694)
at android.view.ViewGroup.layout(ViewGroup.java:4491)
at android.widget.FrameLayout.onLayout(FrameLayout.java:448)
at android.view.View.layout(View.java:14694)
at android.view.ViewGroup.layout(ViewGroup.java:4491)
at android.support.v7.internal.widget.ActionBarOverlayLayout.onLayout(ActionBarOverlayLayout.java:493)
at android.view.View.layout(View.java:14694)
at android.view.ViewGroup.layout(ViewGroup.java:4491)
at android.widget.FrameLayout.onLayout(FrameLayout.java:448)
at android.view.View.layout(View.java:14694)
at android.view.ViewGroup.layout(ViewGroup.java:4491)
at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1669)
at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1527)
at android.widget.LinearLayout.onLayout(LinearLayout.java:1440)
at android.view.View.layout(View.java:14694)
at android.view.ViewGroup.layout(ViewGroup.java:4491)
at android.widget.FrameLayout.onLayout(FrameLayout.java:448)
at android.view.View.layout(View.java:14694)
at android.view.ViewGroup.layout(ViewGroup.java:4491)
at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:2200)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2014)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1227)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:4995)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:791)
at android.view.Choreographer.doCallbacks(Choreographer.java:591)
at android.view.Choreographer.doFrame(Choreographer.java:561)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:777)
at android.os.Handler.handleCallback(Handler.java:725)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:175)
at android.app.ActivityThread.main(ActivityThread.java:5279)
at java.lang.reflect.Method.invokeNative(Method.java)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1102)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:869)
at dalvik.system.NativeStart.main(NativeStart.java)

Error creating Typeface

When I try to create a new Typeface using this piece of code on my Product class (custom class, has getView() method to populate a ListView)
Typeface tf = Typeface.createFromAsset(context.getApplicationContext().getAssets(), "fonts/cambriab.ttf");
I get the following stacktrace:
E/AndroidRuntime: FATAL EXCEPTION: main
java.lang.RuntimeException: native typeface cannot be made
at android.graphics.Typeface.<init>(Typeface.java:175)
at android.graphics.Typeface.createFromAsset(Typeface.java:149)
at com.darkraven.shoppinglist.Category.getView(Category.java:133)
at com.darkraven.shoppinglist.ProductListAdapter.getView(ProductListAdapter.java:40)
at android.widget.AbsListView.obtainView(AbsListView.java:2179)
at android.widget.ListView.makeAndAddView(ListView.java:1840)
at android.widget.ListView.fillDown(ListView.java:675)
at android.widget.ListView.fillFromTop(ListView.java:736)
at android.widget.ListView.layoutChildren(ListView.java:1641)
at android.widget.AbsListView.onLayout(AbsListView.java:2014)
at android.view.View.layout(View.java:14290)
at android.view.ViewGroup.layout(ViewGroup.java:4562)
at android.widget.RelativeLayout.onLayout(RelativeLayout.java:1076)
at android.view.View.layout(View.java:14290)
at android.view.ViewGroup.layout(ViewGroup.java:4562)
at android.widget.FrameLayout.onLayout(FrameLayout.java:448)
at android.view.View.layout(View.java:14290)
at android.view.ViewGroup.layout(ViewGroup.java:4562)
at com.android.internal.widget.ActionBarOverlayLayout.onLayout(ActionBarOverlayLayout.java:349)
at android.view.View.layout(View.java:14290)
at android.view.ViewGroup.layout(ViewGroup.java:4562)
at android.widget.FrameLayout.onLayout(FrameLayout.java:448)
at android.view.View.layout(View.java:14290)
at android.view.ViewGroup.layout(ViewGroup.java:4562)
at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:1976)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1730)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1004)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:5481)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:749)
at android.view.Choreographer.doCallbacks(Choreographer.java:562)
at android.view.Choreographer.doFrame(Choreographer.java:532)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:735)
at android.os.Handler.handleCallback(Handler.java:730)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5124)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:525)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
at dalvik.system.NativeStart.main(Native Method)
context is the main Activity.
If you have your ttf file placed in fonts folder in the assets , even the below code will work, or I can say it works for me ::
Typeface helveticaMedCond = Typefaces.get(getApplicationContext(), "fonts/Helvetica 67 Medium #2BD9AB.TTF");
before that cross verify whether you are using the same font name that is placed in the fonts folder or not.

NullPointerException at BoringLayout.isBoring is anything but boring

A stack trace below
Usually doesn't happen, but happens here and there to some users.
On Android 2.3.3 the exception happens on BoringLayout.isBoring:240
On Android 4.1.2 the same, line 260
Any help would be appreciated. :-)
java.lang.NullPointerException
at android.text.BoringLayout.isBoring(BoringLayout.java:260)
at android.widget.TextView.onMeasure(TextView.java:6322)
at android.view.View.measure(View.java:15473)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5056)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1396)
at android.widget.LinearLayout.measureHorizontal(LinearLayout.java:1038)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:576)
at android.view.View.measure(View.java:15473)
at android.widget.LinearLayout.measureHorizontal(LinearLayout.java:1223)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:576)
at android.view.View.measure(View.java:15473)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5056)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1396)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:681)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:574)
at android.view.View.measure(View.java:15473)
at android.widget.ListView.setupChild(ListView.java:1853)
at android.widget.ListView.makeAndAddView(ListView.java:1778)
at android.widget.ListView.fillDown(ListView.java:678)
at android.widget.ListView.fillFromTop(ListView.java:739)
at android.widget.ListView.layoutChildren(ListView.java:1614)
at android.widget.AbsListView.onLayout(AbsListView.java:2296)
at android.view.View.layout(View.java:14055)
at android.view.ViewGroup.layout(ViewGroup.java:4604)
at android.widget.RelativeLayout.onLayout(RelativeLayout.java:948)
at android.view.View.layout(View.java:14055)
at android.view.ViewGroup.layout(ViewGroup.java:4604)
at android.widget.FrameLayout.onLayout(FrameLayout.java:448)
at android.view.View.layout(View.java:14055)
at android.view.ViewGroup.layout(ViewGroup.java:4604)
at android.widget.FrameLayout.onLayout(FrameLayout.java:448)
at android.view.View.layout(View.java:14055)
at android.view.ViewGroup.layout(ViewGroup.java:4604)
at android.support.v4.view.ViewPager.onLayout(ViewPager.java:1589)
at android.view.View.layout(View.java:14055)
at android.view.ViewGroup.layout(ViewGroup.java:4604)
at android.widget.RelativeLayout.onLayout(RelativeLayout.java:948)
at android.view.View.layout(View.java:14055)
at android.view.ViewGroup.layout(ViewGroup.java:4604)
at android.widget.FrameLayout.onLayout(FrameLayout.java:448)
at android.view.View.layout(View.java:14055)
at android.view.ViewGroup.layout(ViewGroup.java:4604)
at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1655)
at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1513)
at android.widget.LinearLayout.onLayout(LinearLayout.java:1426)
at android.view.View.layout(View.java:14055)
at android.view.ViewGroup.layout(ViewGroup.java:4604)
at android.widget.FrameLayout.onLayout(FrameLayout.java:448)
at android.view.View.layout(View.java:14055)
at android.view.ViewGroup.layout(ViewGroup.java:4604)
at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:1992)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1813)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1112)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:4472)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:725)
at android.view.Choreographer.doCallbacks(Choreographer.java:555)
at android.view.Choreographer.doFrame(Choreographer.java:525)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:711)
at android.os.Handler.handleCallback(Handler.java:615)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4898)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1006)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:773)
at dalvik.system.NativeStart.main(Native Method)
Ok found it.
I'm not deleting the question because maybe it would help someone some day.
So my mistake was:
I have extended TextView to create a class that manipulates the text, and look depending on the value set.
My error was that in some cases I chose not to set the text, and simply called 'return'. In those cases the 'text' was null, which caused the above NPE.
Lesson: If you override setText, a value MUST be set when it is called.
This is one of those points in time I remember 'design by contract', preconditions, invariants etc. This could have been helpful here.
To all those that tried to help, you have my thanks.
#Deylan - special thanks, you were the one that gave me the nudge in the right direction.

Categories

Resources