Why do I get an error while trying to set the content of a tabspec in android?

Posted by rushinge on Stack Overflow See other posts from Stack Overflow or by rushinge
Published on 2010-05-31T03:36:37Z Indexed on 2010/05/31 3:42 UTC
Read the original article Hit count: 237

Filed under:
|
|
|
|

I have an android activity in which I'm using tabs.

public class UnitActivity extends TabActivity {

@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.unit_view);

TabHost tabHost = getTabHost(); TabSpec spec;

spec = tabHost.newTabSpec("controls"); spec.setIndicator("Control"); spec.setContent(R.layout.unit_control); tabHost.addTab(spec);

spec = tabHost.newTabSpec("data"); spec.setIndicator("Data"); spec.setContent(R.layout.unit_data); tabHost.addTab(spec); } }

However when I run the program it crashes with the error: "Could not create tab content because could not find view with id 2130903042". I don't understand what the problem is because R.layout.unit_data refers to a layout file in my resource directory (res/layout/unit_data.xml)

as far as I can tell unit_data.xml is well formed and I've even referenced it successfully in another activity

class UnitData extends Activity {

@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.unit_data); Toast.makeText(this, "Hi from UnitData.onCreate", 5); } }

which does not give an error and renders the layout just fine.

What's going on? Why can't I reference this layout when creating a tab?

© Stack Overflow or respective owner

Related posts about android

Related posts about layout