2012-04-13 23 views
23

He creado una Actividad y declarado en el archivo Manifiesto. Pero me gustaría volver a usar la misma actividad para otro propósito.Cómo cambiar la etiqueta de Actividad android

<activity 
      android:configChanges="orientation|keyboardHidden" 
      android:label="Main Menu" 
      android:name=".MainMenu" 
      android:theme="@android:style/Theme.Light" > 
     </activity> 

Necesito cambiar la etiqueta dinámicamente. Gracias de antemano

+0

espero que esto ayude http://stackoverflow.com/questions/3438276/change-title-bar-text-in-android – ngesh

+0

Hola Agarwal Creo que usted no sabe la respuesta – noname

Respuesta

54

Uso

setTitle (int TitleID)

o

setTitle (título CharSequence)

10

Es necesario utilizar setTitle para esto:

setTitle(R.string.your_title); 
//or 
setTitle("new title"); 
+1

Gracias . esto funciona muy bien – noname

+1

SetTitleColor también se puede utilizar en el método onCreate() para hacer que su título sea de un color particular. setTitleColor (getResources(). getColor (R.color.mycolor)); – Tastybrownies

1
if(Condition) 
{ 
    setTitle("Your Title"); 
} 
else 
{ 
    // your Default Title from Manifest 
} 

intenta utilizar esta línea.

19
public class YourActivity extends Activity { 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     setTitle(R.string.your_title); 
     setContentView(R.layout.main); 
    } 
} 
+0

¿Lo está poniendo antes de 'setContentView()' importante? Noté que hay otra pregunta como esta en la que el uso de 'setTitle()' no funcionaba para él, pero lo usó después. –

+0

No me enfrenté a tal escenario, pero podría ser una cantidad insignificante de trabajo probar ambas situaciones.Si este es realmente el caso, y si esa persona necesita establecer el título solo después de 'setContentView()', él podría establecer una cadena ficticia para el título primero, y luego proceder con el cambio en el flujo del programa. – SamSPICA

+1

@JacobZimmerman Lo es y esta respuesta resolvió mi problema. ¡Al hacerlo en este orden, TalkBack leerá el título correcto para el usuario! – Pedram

3

puede definir el cadena en la resolución de archivo/string.xml y luego añadir androide: etiqueta al archivo AndroidMenifest.xml

string.xml code 
<string name="string_name">text to display</string> 

AndroidMenifest.xml code 

<activity android:name=".SomeActivity" 
      android:label="@string/string_name"/> 
0

estático, no dinámico

Ir al archivo AndroidManifest.xml y añadir el androide : etiqueta de atributo a la etiqueta de actividad que desee, así:

<activity android:name=".name" android:label="label"/> 
2

que tienen el mismo problema, intente esto en onCreate es un trabajo para mí!

public class YourActivityName extends Activity { 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
    setTitle("Your Title"); 
    } 
} 
0

En el archivo de manifiesto

Inicialmente, el código fue así.

<category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
    <activity android:name=".NumbersActivity" /> 
    <activity android:name=".FamilyMembersActivity" /> 
    <activity android:name=".ColorsActivity" /> 
    <activity android:name=".PhrasesActivity" /> 
    </activity> 
</application> 

Pero después de los cambios para agregar etiquetas.

<activity android:name=".NumbersActivity" android:label="Numbers" /> 
    <activity android:name=".FamilyMembersActivity" android:label="Family Members" /> 
    <activity android:name=".ColorsActivity" android:label="Colors" /> 
    <activity android:name=".PhrasesActivity" android:label="Phrases" > 
    </activity> 
</application> 

es la forma óptima de cambiar el nombre de la etiqueta.

cortesía. (Ryanwaite28)

Cuestiones relacionadas