Tuesday 15 March 2011

android - Setting a subtitle on my Toolbar from a fragment -



android - Setting a subtitle on my Toolbar from a fragment -

i having problem setting sub-title in toolbar fragment. maintain getting null pointer exception @ setsubtitle.

@override public void onactivitycreated(bundle savedinstancestate) { super.onactivitycreated(savedinstancestate); getactivity().getactionbar().setsubtitle("about"); // null pointer exception here }

adding toolbar host activity:

@override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); toolbar = (toolbar) findviewbyid(r.id.toolbar); if (toolbar != null) { log.w("rakshak", "toolbar not null"); setsupportactionbar(toolbar); } }

my style.xml

<style name="apptheme.base" parent="theme.appcompat.light.darkactionbar"> <item name="colorprimary">#1a7e99</item> <item name="colorprimarydark">#16657a</item> <item name="android:windownotitle">true</item> <item name="windowactionbar">false</item> </style>

here logcat:

11-12 11:24:15.580: e/androidruntime(22183): fatal exception: main 11-12 11:24:15.580: e/androidruntime(22183): java.lang.nullpointerexception 11-12 11:24:15.580: e/androidruntime(22183): @ com.driverdesignstudio.drvr.about.onactivitycreated(about.java:63) 11-12 11:24:15.580: e/androidruntime(22183): @ android.app.fragment.performactivitycreated(fragment.java:1703) 11-12 11:24:15.580: e/androidruntime(22183): @ android.app.fragmentmanagerimpl.movetostate(fragmentmanager.java:903) 11-12 11:24:15.580: e/androidruntime(22183): @ android.app.fragmentmanagerimpl.movetostate(fragmentmanager.java:1057) 11-12 11:24:15.580: e/androidruntime(22183): @ android.app.backstackrecord.run(backstackrecord.java:694) 11-12 11:24:15.580: e/androidenter code hereruntime(22183): @ android.app.fragmentmanagerimpl.execpendingactions(fragmentmanager.java:1435) 11-12 11:24:15.580: e/androidruntime(22183): @ android.app.fragmentmanagerimpl$1.run(fragmentmanager.java:441) 11-12 11:24:15.580: e/androidruntime(22183): @ android.os.handler.handlecallback(handler.java:800) 11-12 11:24:15.580: e/androidruntime(22183): @ android.os.handler.dispatchmessage(handler.java:100) 11-12 11:24:15.580: e/androidruntime(22183): @ android.os.looper.loop(looper.java:194) 11-12 11:24:15.580: e/androidruntime(22183): @ android.app.activitythread.main(activitythread.java:5371) 11-12 11:24:15.580: e/androidruntime(22183): @ java.lang.reflect.method.invokenative(native method) 11-12 11:24:15.580: e/androidruntime(22183): @ java.lang.reflect.method.invoke(method.java:525) 11-12 11:24:15.580: e/androidruntime(22183): @ com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:833) 11-12 11:24:15.580: e/androidruntime(22183): @ com.android.internal.os.zygoteinit.main(zygoteinit.java:600) 11-12 11:24:15.580: e/androidruntime(22183): @ dalvik.system.nativestart.main(native method)

do have create interface listeners , hear fragment start , stop in fragment activity set subtitles or there easier way set subtitles in toolbar fragments.

let me know if need see more of code.

cheers.

to utilize toolbar , appcompat 21, have utilize appcompatactivity , use:

((appcompatactivity) getactivity()).getsupportactionbar().setsubtitle("about");

android android-fragments android-actionbar appcompat android-toolbar

No comments:

Post a Comment