Escribí una vista personalizada que dibuja un círculo. Luego lo puse en disposición relativa. También puse el botón estándar allí, para que se superpongan. Y veo que ese botón es transparente. ¿Cómo hacerlo no transparente?¿Cómo hacer que el botón no sea transparente?
Respuesta
El botón Holo temática estándar es parcialmente transparente. Puede crear una nueva imagen de botón 9.png para usar en el botón o crear un botón nuevo usando drawable.
Aquí hay un enlace sobre cómo hacer esto último:
se puede poner el botón en el diseño de marcos por separado para que su vista suele afectar el botón y esa es mi idea
Guardar a continuación código como XML en la carpeta estirable y dar a este XML como fondo de botón
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<stroke android:width="0dp" android:color="#ffffff" />
<solid android:color="#000000"/>
<corners android:radius="1px"/>
<padding android:left="5dp" android:top="3dp" android:right="5dp" android:bottom="3dp" />
</shape>
Ex:
android:background="@drawable/<< your file name>>"
Establezca el fondo en @android:drawable/btn_default
para obtener r id de la transparencia del tema holo
La transparencia holo está realmente integrada en los archivos PNG. Entonces, la única manera real de cambiarlo es editar los PNG y hacerlos no transparentes. Esto en realidad no es nada fácil. Necesita multiplicar el canal alfa de la imagen por 255/102. ¡Lo cual no es fácil!
Pero como soy tan genial, encontré la manera de hacerlo. Básicamente copié todos los PNG y XML relevantes en su propia estructura de directorios (los botones solo tienen las versiones -mdpi
, -hdpi
y -xhdpi
). Luego ejecuté esto:
para ARCHIVO en find . -name *.png
; do mogrify -evaluate Multiply 2.5 -channel Alpha $ FILE; hecho
¡Trabajo hecho! En realidad, no funcionó para los botones desactivados por alguna razón, creo que porque el centro es súper transparente, pero eso no me importa demasiado. Tendrá que usar un valor superior a 2.5 para esas imágenes si las quiere totalmente no transparentes.
Anway el resultado es here.
Esto es excelente, pero cuando dices "Entonces ejecuté esto ...", donde ¿ejecutas ese código? – Floris
Estaba con el mismo problema pero con ToggleButton. Una solución fea pero rápida fue colocar un ImageView justo detrás del botón y cambiar su margin
s, background
y alpha
para que se ajuste al botón. Por ejemplo, dentro de un RelativeLayout:
<ImageView
android:layout_alignLeft="@+id/toggleButton"
android:layout_alignBottom="@+id/toggleButton"
android:layout_alignRight="@+id/toggleButton"
android:layout_alignTop="@+id/toggleButton"
style="@style/HackBackgroundToggleButton" />
<ToggleButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/toggleButton"
... />
Y, en un esfuerzo por reducir el hack visible, el estilo extraída:
<style name="HackBackgroundToggleButton">
<item name="android:layout_width">84dp</item>
<item name="android:layout_height">42dp</item>
<item name="android:background">#FFFFFF</item>
<item name="android:layout_marginTop">4dp</item>
<item name="android:layout_marginLeft">4dp</item>
<item name="android:layout_marginRight">4dp</item>
<item name="android:layout_marginBottom">4dp</item>
<item name="android:alpha">0.75</item>
</style>
- 1. WPF: Cómo hacer que un fondo de botón sea transparente
- 2. ¿Cómo hacer que NSTableView sea transparente?
- 3. ¿Cómo hacer que JFrame sea transparente?
- 4. ¿Cómo hacer que el fondo de una JTable sea transparente?
- 5. ¿Cómo hacer que el fondo de un JCheckBox sea transparente?
- 6. Iphone ¿Cómo hacer que el fondo del contexto sea transparente?
- 7. Cómo hacer que el botón sea transparente en mi aplicación aún visible
- 8. Hacer que el fondo de JLabel sea transparente nuevamente
- 9. Android Spinner: cómo hacer que la vista desplegable sea transparente?
- 10. ¿Cómo hacer que un diálogo personalizado sea transparente?
- 11. ¿Cómo puedo hacer que el fondo de mi sitio web sea transparente sin hacer que el contenido (imágenes y texto) también sea transparente?
- 12. Java: ¿cómo hacer que el fondo Jscrollpane del contenedor no sea opaco? (es decir, transparente)
- 13. ¿Cómo puedo hacer que mi formulario sea transparente, pero no lo que hago?
- 14. No puedo hacer que el DialogFragment personalizado sea transparente sobre el Fragmento
- 15. ¿Cómo configuro el fondo de UIScrollView para que sea transparente?
- 16. ¿Cómo hacer que el ancho del botón sea autofit el texto de un botón?
- 17. Cómo hacer que el color de fondo div sea transparente en CSS
- 18. Python PIL: cómo hacer que el área sea transparente en PNG?
- 19. ¿Cómo hacer que la forma sea transparente mientras se mantiene el componente visible?
- 20. ¿Cómo hacer que un TFrame (y todo lo que contiene) sea parcialmente transparente?
- 21. ¿Cómo hacer que el archivo sea escaso?
- 22. Cómo hacer que PictureBox sea desplazable
- 23. Cómo hacer que un NSView sea transparente y muestre qué hay debajo de NSWindow?
- 24. Hacer que el fondo blanco de la imagen sea transparente en css
- 25. cómo hacer SlidingDrawer transparente
- 26. color "transparente" que no trabaja
- 27. ¿Cómo puedo hacer que una parte del formulario sea parcialmente transparente en C#?
- 28. Dibujando un botón transparente
- 29. ¿Cómo puedo hacer que un formulario sea transparente según una imagen PNG?
- 30. Cómo hacer que el texto sea negrita usando jquery
¿Cuál es la forma más sencilla? ¿No puedo simplemente personalizar el botón como no transparente? –
La segunda opción es bastante directa. Simplemente puede cambiar el fondo del botón a un color sólido (es decir, # 999999), pero eso no se vería bien y no le daría al botón un estado presionado que cause una mala experiencia del usuario. – Tony