Foros del Web » Programando para Internet » Android »

Problema con TabHost

Estas en el tema de Problema con TabHost en el foro de Android en Foros del Web. Hola... En una activity estoy creando un tabhost, pero cuando lo ejecuto me sale un error. He buscado alguna solución pero no encuentro nada al ...
  #1 (permalink)  
Antiguo 17/02/2015, 10:37
Avatar de LordJhony  
Fecha de Ingreso: septiembre-2010
Mensajes: 472
Antigüedad: 13 años, 7 meses
Puntos: 24
Problema con TabHost

Hola...
En una activity estoy creando un tabhost, pero cuando lo ejecuto me sale un error.
He buscado alguna solución pero no encuentro nada al respecto.
¿Alguien me podría indicar que me genera el problema?, de antemano muchas gracias

xml
Código XML:
Ver original
  1. <ScrollView
  2.    xmlns:android="http://schemas.android.com/apk/res/android"
  3.    xmlns:tools="http://schemas.android.com/tools"
  4.    android:layout_gravity="center_vertical"
  5.    android:layout_width="match_parent"
  6.    android:layout_height="wrap_content">
  7.    
  8.     <RelativeLayout
  9.        android:layout_width="fill_parent"
  10.        android:layout_height="wrap_content"
  11.        android:paddingBottom="@dimen/activity_vertical_margin"
  12.        android:paddingLeft="@dimen/activity_horizontal_margin"
  13.        android:paddingRight="@dimen/activity_horizontal_margin"
  14.        android:paddingTop="@dimen/activity_vertical_margin"
  15.        tools:context="com.example.app8semanas.MainProgreso" >
  16.  
  17.     <TabHost
  18.            android:id="@android:id/tabhost"
  19.            android:layout_width="match_parent"
  20.            android:layout_height="match_parent"
  21.            android:layout_alignParentLeft="true"
  22.            android:layout_below="@+id/txt1"
  23.            android:layout_marginTop="14dp" >
  24.            
  25.             <LinearLayout
  26.                android:layout_width="match_parent"
  27.                android:layout_height="match_parent"
  28.                android:orientation="vertical" >
  29.                
  30.                 <TabWidget
  31.                    android:id="@android:id/tabs"
  32.                    android:layout_width="match_parent"
  33.                    android:layout_height="wrap_content" >
  34.                 </TabWidget>
  35.                
  36.                 <FrameLayout
  37.                    android:id="@android:id/tabcontent"
  38.                    android:layout_width="match_parent"
  39.                    android:layout_height="match_parent" >
  40.  
  41.                 <RelativeLayout
  42.                    android:id="@+id/tab1"
  43.                    android:layout_width="match_parent"
  44.                    android:layout_height="374dp"
  45.                    android:orientation="horizontal" >
  46.                                                      
  47.                     <RadioGroup
  48.                        android:id="@+id/rgactfis"
  49.                        android:layout_width="wrap_content"
  50.                        android:layout_height="wrap_content"
  51.                        android:layout_below="@+id/txtactfis" >
  52.  
  53.                         <RadioButton
  54.                            android:id="@+id/rbaf1"
  55.                            android:layout_width="wrap_content"
  56.                            android:checked="true"
  57.                            android:text="@string/hice_15_minutos" />
  58.                        
  59.                         <RadioButton
  60.                            android:id="@+id/rbaf2"
  61.                            android:layout_width="wrap_content"
  62.                            android:text="@string/hice_30_minutos" />
  63.                        
  64.                         <RadioButton
  65.                            android:id="@+id/rbaf3"
  66.                            android:layout_width="wrap_content"
  67.                            android:text="@string/hice_45_minutos" />            
  68.                        
  69.                     </RadioGroup>
  70.                    
  71.                 <RelativeLayout
  72.                    android:id="@+id/tab2"
  73.                    android:layout_width="match_parent"
  74.                    android:layout_height="match_parent"
  75.                    android:orientation="horizontal" >                    
  76.                                      
  77.                     <RadioGroup
  78.                        android:id="@+id/rgfruveg"
  79.                        android:layout_width="wrap_content"
  80.                        android:layout_height="wrap_content"
  81.                        android:layout_below="@+id/txtfruveg" >
  82.                        
  83.                         <RadioButton
  84.                            android:id="@+id/rbfv1"
  85.                            android:layout_width="wrap_content"
  86.                            android:checked="true"
  87.                            android:text="@string/si" />
  88.                        
  89.                         <RadioButton
  90.                            android:id="@+id/rbfv2"
  91.                            android:layout_width="wrap_content"
  92.                            android:text="@string/no" />
  93.                     </RadioGroup>                    
  94.                    
  95.                 </RelativeLayout>
  96.                
  97.                 <RelativeLayout
  98.                    android:id="@+id/tab3"
  99.                    android:layout_width="match_parent"
  100.                    android:layout_height="match_parent"
  101.                    android:orientation="horizontal" >                    
  102.                                    
  103.                     <RadioGroup
  104.                        android:id="@+id/rgdormir"
  105.                        android:layout_width="wrap_content"
  106.                        android:layout_height="wrap_content"
  107.                        android:layout_below="@+id/txtdormir" >
  108.                        
  109.                         <RadioButton
  110.                            android:id="@+id/rbd1"
  111.                            android:layout_width="wrap_content"
  112.                            android:checked="true"
  113.                            android:text="@string/si" />
  114.                        
  115.                         <RadioButton
  116.                            android:id="@+id/rbd2"
  117.                            android:layout_width="wrap_content"
  118.                            android:text="@string/no" />
  119.                     </RadioGroup>  
  120.                    
  121.                 </RelativeLayout>
  122.  </FrameLayout>
  123.         </LinearLayout>
  124.     </TabHost>
  125. </RelativeLayout>
  126. </ScrollView>

java:
Código Java:
Ver original
  1. public class MainProgreso extends Activity implements OnClickListener
  2. {
  3.     private TabHost th;
  4.     protected void onCreate(Bundle savedInstanceState)
  5.     {      
  6.         super.onCreate(savedInstanceState);
  7.         setContentView(R.layout.progreso);
  8.        
  9.         th=(TabHost)findViewById(android.R.id.tabhost);    
  10.         th.setup();    
  11.        
  12.         TabSpec ts1=th.newTabSpec("Tab1");
  13.         ts1.setIndicator("Actividad_Fisica");
  14.         ts1.setContent(R.id.tab1);             
  15.        
  16.         TabSpec ts2=th.newTabSpec("Tab2");
  17.         ts1.setIndicator("Frutas_Verduras");
  18.         ts1.setContent(R.id.tab2);             
  19.        
  20.         TabSpec ts3=th.newTabSpec("Tab3");
  21.         ts1.setIndicator("Sueño");
  22.         ts1.setContent(R.id.tab3);
  23.        
  24.         th.addTab(ts1);
  25.         th.addTab(ts2);
  26.         th.addTab(ts3);
  27.    
  28.     }
  29.    
  30.     public boolean onCreateOptionsMenu(Menu menu) {
  31.         // Inflate the menu; this adds items to the action bar if it is present.
  32.         getMenuInflater().inflate(R.menu.main, menu);
  33.         return true;
  34.     }
  35.    
  36.     @Override
  37.     public boolean onOptionsItemSelected(MenuItem item) {
  38.         int id = item.getItemId();
  39.         if (id == R.id.action_settings) {
  40.             return true;
  41.         }
  42.         return super.onOptionsItemSelected(item);
  43.     }
  44.  
  45.     @Override
  46.     public void onClick(View v)
  47.     {
  48.        
  49.     }
  50. }

el error
Cita:
02-17 16:20:25.264: E/AndroidRuntime(918): FATAL EXCEPTION: main
02-17 16:20:25.264: E/AndroidRuntime(918): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.app8semanas/com.example.app8semanas.MainProgreso}: java.lang.IllegalArgumentException: you must specify a way to create the tab indicator.
02-17 16:20:25.264: E/AndroidRuntime(918): at android.app.ActivityThread.performLaunchActivity(A ctivityThread.java:1955)
02-17 16:20:25.264: E/AndroidRuntime(918): at android.app.ActivityThread.handleLaunchActivity(Ac tivityThread.java:1980)
02-17 16:20:25.264: E/AndroidRuntime(918): at android.app.ActivityThread.access$600(ActivityThre ad.java:122)
02-17 16:20:25.264: E/AndroidRuntime(918): at android.app.ActivityThread$H.handleMessage(Activit yThread.java:1146)
02-17 16:20:25.264: E/AndroidRuntime(918): at android.os.Handler.dispatchMessage(Handler.java:99 )
02-17 16:20:25.264: E/AndroidRuntime(918): at android.os.Looper.loop(Looper.java:137)
02-17 16:20:25.264: E/AndroidRuntime(918): at android.app.ActivityThread.main(ActivityThread.jav a:4340)
02-17 16:20:25.264: E/AndroidRuntime(918): at java.lang.reflect.Method.invokeNative(Native Method)
02-17 16:20:25.264: E/AndroidRuntime(918): at java.lang.reflect.Method.invoke(Method.java:511)
02-17 16:20:25.264: E/AndroidRuntime(918): at com.android.internal.os.ZygoteInit$MethodAndArgsCa ller.run(ZygoteInit.java:784)
02-17 16:20:25.264: E/AndroidRuntime(918): at com.android.internal.os.ZygoteInit.main(ZygoteInit .java:551)
02-17 16:20:25.264: E/AndroidRuntime(918): at dalvik.system.NativeStart.main(Native Method)
02-17 16:20:25.264: E/AndroidRuntime(918): Caused by: java.lang.IllegalArgumentException: you must specify a way to create the tab indicator.
02-17 16:20:25.264: E/AndroidRuntime(918): at android.widget.TabHost.addTab(TabHost.java:217)
02-17 16:20:25.264: E/AndroidRuntime(918): at com.example.app8semanas.MainProgreso.onCreate(Main Progreso.java:36)
02-17 16:20:25.264: E/AndroidRuntime(918): at android.app.Activity.performCreate(Activity.java:4 465)
02-17 16:20:25.264: E/AndroidRuntime(918): at android.app.Instrumentation.callActivityOnCreate(I nstrumentation.java:1049)
02-17 16:20:25.264: E/AndroidRuntime(918): at android.app.ActivityThread.performLaunchActivity(A ctivityThread.java:1919)
02-17 16:20:25.264: E/AndroidRuntime(918): ... 11 more

Etiquetas: activity, androi, app, list, tiempo, view
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:40.