Actually this is even stranger because when you use the arrow key from the keyboard and get the focus to the textview from the tab view, it does not take the focus back.
Here is the XML file : <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/ android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <LinearLayout android:padding="5px" android:orientation="vertical" android:id="@+id/task_edit_panel" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="50" > <LinearLayout android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="wrap_content"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/title" android:textStyle="bold" /> <EditText android:id="@+id/title" android:layout_width="fill_parent" android:layout_height="fill_parent" /> </LinearLayout> <TabHost android:id="@+id/edit_item_tab_host" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TabWidget android:layout_width="fill_parent" android:layout_height="wrap_content" android:id="@android:id/tabs" /> <FrameLayout android:id="@android:id/tabcontent" android:layout_width="fill_parent" android:layout_height="fill_parent" android:paddingTop="65px"> <!-- you need that if you don't want the tab content to overflow --> <LinearLayout android:id="@+id/edit_item_date_tab" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" android:padding="5px" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="date" android:textStyle="bold" /> </LinearLayout> <LinearLayout android:id="@+id/edit_item_geocontext_tab" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" android:padding="5px" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="lieu" android:textStyle="bold" /> </LinearLayout> <LinearLayout android:id="@+id/edit_item_text_tab" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" android:padding="5px"> <EditText android:id="@+id/details" android:layout_width="fill_parent" android:layout_height="fill_parent" android:scrollbars="vertical" /> </LinearLayout> </FrameLayout> </TabHost> </LinearLayout> <!-- Bottom pannel with "add item" button --> <LinearLayout android:padding="5px" android:orientation="horizontal" android:layout_weight="1" android:id="@+id/task_edit_panel" android:layout_width="fill_parent" android:layout_height="wrap_content" android:background="#E7E7E7" > <!-- Let the height set to fill_parent until we find a better way for the layout --> <Button android:id="@+id/item_edit_ok_button" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_gravity="bottom" android:text="@string/ok" style="?android:attr/buttonStyleSmall" android:layout_weight="1" /> <Button android:id="@+id/item_edit_cancel_button" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_gravity="bottom" android:text="@string/cancel" style="?android:attr/buttonStyleSmall" android:layout_weight="1" /> </LinearLayout> </LinearLayout> I bind everything that way : TabHost tab_host = (TabHost) findViewById (R.id.edit_item_tab_host); // don't forget this setup before adding tabs from a tabhost using a xml view or you'll get an nullpointer exception tab_host.setup(); TabSpec ts1 = tab_host.newTabSpec("TAB_DATE"); ts1.setIndicator(getString(R.string.when), getResources ().getDrawable(R.drawable.ic_dialog_time)); ts1.setContent(R.id.edit_item_date_tab); tab_host.addTab(ts1); TabSpec ts2 = tab_host.newTabSpec("TAB_GEO"); ts2.setIndicator(getString(R.string.where), getResources ().getDrawable(R.drawable.ic_dialog_map)); ts2.setContent(R.id.edit_item_geocontext_tab); tab_host.addTab(ts2); TabSpec ts3 = tab_host.newTabSpec("TAB_TEXT"); ts3.setIndicator(getString(R.string.what), getResources ().getDrawable(R.drawable.ic_menu_edit)); ts3.setContent(R.id.edit_item_text_tab); tab_host.addTab(ts3); tab_host.setCurrentTab(0); On Apr 21, 1:38 am, "Peter Carpenter" <peter.carpen...@skytechnologies.com> wrote: > The editText calls requestLayout every time the text is modified, and > this request flows all of the way up the hierarchy. I would have to > assume that the onMeasure/onLayout functions for thetabare doing > something like clearing thefocus, or removing & re-adding your > editText. > > Now how to fix this? I'm not sure. I eagerly await other people's > suggestions! > > -----Original Message----- > From: android-developers@googlegroups.com > > [mailto:android-develop...@googlegroups.com] On Behalf Of cvance383 > Sent: Saturday, 18 April 2009 7:37 AM > To: Android Developers > Subject: [android-developers] EditText & Tabhost problem > > The problem I am having is I have a framelayout with a tabhost (& > widget & tabcontent) then I have another layout over top of the tabs > that looks like a form. It has two editTexts but when I type in the > them, the tabs stealfocusand put what i typed in the edittext i have > within the tabcontent. If I remove the tabs from my xml and app, the > top level edittext works fine. Anyone know why the tabs stealfocus > when I type in the form in the foreground. Any solutions? I appreciate > any help. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~----------~----~----~----~------~----~------~--~---