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
-~----------~----~----~----~------~----~------~--~---

Reply via email to