Estoy utilizando PreferenceActivity, ¿cómo puedo establecer una barra de título personalizada? No solo texto, sino color de fondo, tamaño: todo el diseño.Establecer una barra de título personalizada en PreferenceAcivity
Respuesta
PreferenceActivity extends ListActivity
, y cuando se infla las preferencias de XML con addPreferencesFromResource()
, que pone las cosas en las que los estándares ListView
ListActivity
usos.
Así que, básicamente, puede usar setContentView()
para especificar un diseño, pero debe tener un ListView
con el ID "@+android:id/list"
.
Así, utilizando código de ejemplo de kleini:
protected void onCreate(Bundle savedInstanceState) {
requestWindowFeature(Window.FEATURE_NO_TITLE);
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.login_settings);
setContentView(R.layout.login_settings_layout);
}
Se necesitaría un ListView de login_settings_layout.xml
que se ve algo como:
<ListView
android:id="@+android:id/list"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>
public class Preferences extends PreferenceActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
super.onCreate(savedInstanceState);
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.title_bar);
}
}
lo he intentado, pero no funcionó. No cambia nada – fhucho
Esto no funciona para PreferenceActivity, pero funciona bien para otras actividades ... –
impresionante, funcionó bien para "NO_TITLE":
protected void onCreate(Bundle savedInstanceState) {
requestWindowFeature(Window.FEATURE_NO_TITLE);
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.login_settings);
setContentView(R.layout.login_settings_layout);
}
¿Puedes publicar login_settings_layout.xml? – fhucho
O así:
@Override
public void onCreate(Bundle savedInstanceState) {
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
super.onCreate(savedInstanceState);
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.customtitlebar);
addPreferencesFromResource(R.xml.preferences);
}
Con un customtitlebar .xml como este:
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/customTitleBar"
android:layout_width="match_parent"
android:layout_height="match_parent"
style="@style/CustomWindowTitle">
</TextView>
El método de Ben funcionó bien para mí !!. Aquí está el código
public class PreferenceCustomTitleActivity extends PreferenceActivity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
requestWindowFeature(Window.FEATURE_NO_TITLE);
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.preference);
/** Customize your background, textsize, cachetint, dividers
for your list view in the xml **/
setContentView(R.layout.layout_with_simple_listview_only);
ListView list = (ListView) findViewById(android.R.id.list);
View preferenceHeader = getLayoutInflater().inflate(
R.layout.preference_header, null);
list.addHeaderView(preferenceHeader);
}
}
cómo cambiar el texto? –
Esto es lo único que trabajó para mí. El resto de las cosas anteriores no obtuvieron los resultados deseados en mi Tablet Nexus 4.3.
Realmente no pude recrear una barra de acciones adecuada como widget, pero pude poner un gran título de 'Configuración' sobre la Actividad de preferencia, con los pasos a continuación.
Recibí la pista de otra respuesta de stackoverflow y la estoy haciendo más elaborada.
En la clase PreferenceActivity (quitar la barra de título vigente)
public class Settings extends PreferenceActivity· { ... @Override public void onCreate(Bundle savedInstanceState) { requestWindowFeature(Window.FEATURE_NO_TITLE); // This goes first super.onCreate(savedInstanceState); addPreferencesFromResource(R.xml.settings);
En res/xml/settings.xml, quisiera llamar la atención sobre la primera PreferenceCategory
<?xml version="1.0" encoding="utf-8"?> <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"> <PreferenceCategory android:layout="@layout/settings_titlebar" /> <PreferenceCategory android:title="Notifications"> <Preference .....
En res/layout/settings_titlebar.xml
Navals-MacBook Pro-: ver_ui_0.2 Navales $ vi res/layout/settings_titlebar.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:background="@drawable/header_background"
android:enabled="false">
<TextView android:src="@drawable/logo"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:background="@android:color/transparent"
android:padding="4dip"
android:text="Settings"
android:textSize="32sp"
/>
</RelativeLayout>
- 1. Barra de título personalizada sin relleno (Android)
- 2. ¿El tema Holo funciona con una barra de título personalizada?
- 3. ¿Cómo configuro programáticamente el degradado de color de fondo en una barra de título personalizada?
- 4. Establecer color de fondo de la barra de título AlertBox
- 5. Ocultar barra de título NSWindow
- 6. Establecer título UITabBarItem programmatically?
- 7. cómo configurar la barra de título personalizada TextView Value dinámicamente en android?
- 8. Cómo dibujar una barra de título personalizada como el yahoo messenger 11
- 9. de la barra de título
- 10. Android: Custom barra de título
- 11. barra de progreso en la barra de título
- 12. Android barra de título eliminación
- 13. ¿Cómo puedo establecer el título para una barra de navegación de UIN programáticamente?
- 14. cómo incluir vista de título personalizada en AlertDialog en android?
- 15. Eliminar barra de título en Gnome
- 16. Android: ¿Cómo establecer el icono en la barra de título de la actividad de Dialog?
- 17. ¿Cómo puedo personalizar la barra de título en JFrame?
- 18. Barra de desplazamiento personalizada UITableView
- 19. Establecer una ruta de imágenes personalizada en Scout
- 20. ¿Cómo establecer el título del elemento de barra de pestañas programáticamente en el objetivo c?
- 21. Barra de título personalizado con progreso en Android
- 22. Ocultar el título de la barra de navegación sin quitarlo
- 23. qtip2 botón de cerrar sin una barra de título
- 24. ¿Cómo hacer una barra de progreso personalizada en Android?
- 25. Barra de navegación Título Tamaño de fuente
- 26. Barra lateral dinámica de Wordpress sin título
- 27. ¿Establecer el color de fondo para la barra de título del cuadro de diálogo?
- 28. Establecer la gravedad del título en el centro en ActionBarSherlock
- 29. Mostrar u ocultar una barra de título bajo demanda
- 30. ¿Puedo establecer una licencia personalizada usando WiX?
'@ + android: id/list' debe ser' @android: id/list' – mwieczorek