Change the contents of the tabs to be views instead of activities...
Activity tabs are not fully supported and have weird issues.

On Wed, Feb 23, 2011 at 7:56 AM, David Williams <
[email protected]> wrote:

>  Sorry if this is a resend...been having issues emailing to the group.
> ------
>
> I'm new to Android development so please bear with me.  I have created
> an app in WebOS and I'm keen to try and re-create for the Android
> platform.  I have tried to follow the tutorial for creating a tabbed
> view and to some extent I have succeeded.  However, the problem that I
> am having is that when I switch from tab to tab any text or graphics
> is overwritting the tab elements and not displaying below the tabs
> themselves.  I'm sure I've done something stupid that is easy to fix.
>
> Here are the files that I have.  I have my main class which extends
> TabActivity.  The code is as follows:
>
> *package com.dtwconsulting.golfcaddie;
>
> import android.app.TabActivity;
> import android.content.Intent;
> import android.content.res.Resources;
> import android.os.Bundle;
> import android.view.Menu;
> import android.view.MenuInflater;
> import android.widget.TabHost;
>
> public class GolfCaddie extends TabActivity {
>    /** Called when the activity is first created. */
>    @Override
>
>    public void onCreate(Bundle savedInstanceState) {
>        super.onCreate(*
> *savedInstanceState);
>        setContentView(R.layout.**splashmain);
>
> * *        Resources res = getResources(); // Resource object to get
> Drawables
>        TabHost tabHost = getTabHost();  // The activity TabHost
>        TabHost.TabSpec spec;  // Resusable TabSpec for each tab
>        Intent intent;  // Reusable Intent for each tab
>
> * *        // Create an Intent to launch an Activity for the tab (to be
> reused)
>        intent = new Intent().setClass(this, MainActivity.class);
>
> * *        // Initialize a TabSpec for each tab and add it to the TabHost
>        spec = tabHost.newTabSpec("main").**setIndicator("Main",
>                          res.getDrawable(R.drawable.ic_**tab_main))
>                      .setContent(intent);
>        tabHost.addTab(spec);
>
> * *        // Do the same for the other tabs
>        intent = new Intent().setClass(this, PlayersActivity.class);
>        spec = tabHost.newTabSpec("players").**setIndicator("Players",
>                          res.getDrawable(R.drawable.ic_**tab_players))
>                      .setContent(intent);
>        tabHost.addTab(spec);
>
> * *        intent = new Intent().setClass(this, CoursesActivity.class);
>        spec = tabHost.newTabSpec("courses").**setIndicator("Courses",
>                          res.getDrawable(R.drawable.ic_**tab_courses))
>                      .setContent(intent);
>        tabHost.addTab(spec);
>
> * *        tabHost.setCurrentTab(0);
>
> * *    }
>
> * *    public boolean onCreateOptionsMenu(Menu menu) {
>        MenuInflater inflater = getMenuInflater();
>        inflater.inflate(R.menu.main_**menu, menu);
>        return true;
>    }
> }*
>
> My R.layout.splashmain XML code is as follows:
>
> *<?xml version="1.0" encoding="utf-8"?>
> <TabHost xmlns:android="http://schemas.android.com/apk/res/android";
>    android:id="@android:id/**tabhost"
>    android:layout_width="fill_**parent"
>    android:layout_height="fill_**parent">
>                <TabWidget  android:id="@android:id/tabs"
>                        android:layout_width="fill_**parent"
>                        android:layout_height="fill_**parent" />
>        <FrameLayout android:id="@android:id/**tabcontent"
>                         android:layout_width="fill_**parent"
>                         android:layout_height="fill_**parent"
>                         android:padding="5dp" />
> </TabHost>*
>
> In addition to the above I have a class file for each tab and a layout
> file for each tab too.  To give an example of the main class and XML
> layout file:
>
> *package com.dtwconsulting.golfcaddie;
>
> import android.app.Activity;* *
> import android.os.Bundle;
>
> public class MainActivity extends Activity {* *
>    public void onCreate(Bundle savedInstanceState) {
>        super.onCreate(**savedInstanceState);
>
> * *        setContentView(R.layout.main);
>    }
> }
>
> <?xml version="1.0" encoding="utf-8"?>* *
>        <LinearLayout xmlns:android="http://schemas.android.com/apk/res/
> android"
>                              android:layout_width="wrap_**content"
>                              android:layout_height="fill_**parent"
>                              android:fitsSystemWindows="**true"
>                              android:background="@drawable/**golfcaddie">
>        </LinearLayout>*
>
> So, when this main tab is displayed the background image
> (golfcaddie.png) completely displays on the entire screen over the top
> of the tabs.  I've tried playing around with things but all to no
> avail.  I either get the background overlaying the tabs, or I get
> nothing at all.  I suspect that I am just not grasping these layouts
> and how they interact.
>
> Any help/direction on this would be much appreciated, and perhaps I am
> not even doing this the best way.  I ended up Googling about doing a
> tabbed view and was lead a little away from the Google docs.
>
> --
> ------------------------------
>
> David Williams
> Check out our WebOS mobile phone app for the Palm Pre and Pixi:
>  <http://www.dtw-consulting.com/GolfCaddie>   Golf 
> Caddie<http://www.dtw-consulting.com/GolfCaddie>| Golf
> Caddie Forum <http://www.dtw-consulting.com/GolfCaddie/forum> | Golf
> Caddie FAQ <http://www.dtw-consulting.com/GolfCaddie/faq.html> by
> DTW-Consulting, Inc.
>
>
>   --
> You received this message because you are subscribed to the Google
> Groups "Android Developers" group.
> To post to this group, send email to [email protected]
> To unsubscribe from this group, send email to
> [email protected]
> For more options, visit this group at
> http://groups.google.com/group/android-developers?hl=en

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

<<GClogo.png>>

Reply via email to