El título de la actividad extendida no aparece con estilo personalizado

Estoy anulando la clase de actividad de la siguiente manera;

public class MyCustomActivity extends Activity { ... ... } public class MyActivity extends MyCustomActivity { ... ... } 

Y la declaración de actividad en manifiesto es así;

 <activity android:name=".MyCustomActivity" android:label="@string/app_name" > </activity> <activity android:name=".MyActivity" android:label = "ChildActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> 

Mi problema es que el título de actividad definido en el manifiesto en android:label="ChildActivity" no está apareciendo con estilo personalizado. ¿Cómo puedo hacer que aparezca sin llamar a setTitle(charSeq); En cada actividad?

Editar:

Una cosa (cosa terrible) me olvidé mencionar es que estoy usando estilo personalizado de la siguiente manera;

 <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/CustomTheme" > ... ... </application> 

Edit (Después de la respuesta de @ Mudassir): El diseño de barra de título personalizado que estoy usando es como se indica a continuación;

 <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="50dip" android:gravity="center_vertical" android:orientation="horizontal" > <LinearLayout android:layout_width="wrap_content" android:gravity="left" android:orientation="horizontal" > <ImageView android:id="@+id/imageViewIcon" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/vector_arts" android:layout_marginLeft="-15dp" /> <TextView android:id="@+id/textTitleBar" android:layout_width="wrap_content" android:layout_height="wrap_content" /> </LinearLayout> </RelativeLayout> 

Según he entendido su pregunta, está utilizando una vista de texto (estilo personalizado) para mostrar el texto del título. Así que para mostrar el texto por defecto del título (definido en el manifiesto en android:label ) en la barra de título personalizada (vista de texto), tiene que sobrescribir el método setTitle en su padre (MyCustomActivity) como se indica a continuación;

 @Override public void setTitle(CharSequence titleText) { // Assuming you text view's name is titleTextView in the style XML file TextView customTitle = (TextView) findViewById(R.id.titleTextView); customTitle.setText(titleText); } 

Entonces llame a este método de onCreate() de la misma clase como sigue;

setTitle(getTitle());

Esto obtendrá la etiqueta de la actividad definida en el archivo de manifiesto y pasarlo al método setTitle() que lo mostrará en su barra de título personalizada que es vista de texto (customTitle aquí). Tenga en cuenta que este enfoque sólo funcionará si está utilizando una vista de texto para mostrar el texto del título.

Obtiene el mismo título que se estableció en el archivo de manifiesto en el título de la actividad. Si te gusta esto:

 <activity android:name=".MyActivity" android:label="ChildActivity" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name=".TestingMyAcivity"></activity> public class TestingMyAcivity extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } 

}

 public class MyActivity extends TestingMyAcivity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main_); } 

}

Obtendrá el título "ChildActivity" y el diseño en el archivo main_.xml.

MyActivity donde ha establecido ChildActivity como título. MyActivity es la clase child de MyCustomActivity . Mientras que usted fijó el título de la clase del niño vino al frente. La actividad que estás viendo es en realidad Actividad Infantil no Padres. Así se muestra el título de ChildActivity

Gracias Sunil Kumar Sahoo

  • onActivityResult se llama antes de onDestroy
  • Android obtener actividad anterior
  • El método onResume () de la actividad Launcher se llama dos veces, pero onCreate () sólo una vez
  • Actividad de configuración botón Arriba
  • Android.util.AndroidRuntimeException: No puede combinar títulos personalizados con otras funciones de título
  • Mostrar mi actividad en lugar de la pantalla estándar para llamadas entrantes
  • ¿Cómo hacer que la clase AndroidApplication de LibGDX admita Fragmentos de Android?
  • Ocultar el teclado antes de la actividad es visible
  • Cómo cerrar la actividad y volver a la actividad anterior en android
  • ¿Es una Actividad = un Contexto?
  • ¿Por qué onDestroy inActivity A no se llama después de una llamada a finalizar () en ActivityB
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.