Avalados por :
Hola a todos,
Estoy teniendo dificultades con el texto en el campo de entrada (sap.m.Input). Quiero que el texto esté en negrita o sea más grande que el estándar. ¿Hay alguna forma de hacerlo? He intentado con CSS, desafortunadamente sin resultado. ¿O se puede hacer con sap.m.FormattedText ?
Saludos
Jarda
jaroslav.hrbacek Claro, simplemente agrega más estilos encadenando el método `style` del RenderManager .
// ...
renderManager.style("font-weight", "bold").style("font-size", "1.5rem")/*...*/;
Muchas gracias, funciona.
¿Puedo hacer la fuente también más grande?
sap.m.InputBaseRenderer (recientemente visible en la referencia de API) proporciona la API addInnerStyles con la cual los desarrolladores pueden agregar estilos adicionales al valor de entrada interno.
Aquí hay un fragmento de una muestra que utilicé para otra respuesta...: https://embed.plnkr.co/ik9PIdHKvK8udpQt?show=control%2FInput.js,preview
sap.ui.define([
"sap/m/Input",
"sap/m/InputRenderer",
], function (Input, InputRenderer) {
"use strict";
return Input.extend("demo.control.BoldInput", {
renderer: {
apiVersion: 2,
addInnerStyles: function (renderManager) {
InputRenderer.addInnerStyles.apply(this, arguments);
renderManager.style("font-weight", "bold");
},
},
});
});
<!-- En la vista o fragmento: -->
<my:BoldInput xmlns:my="demo.control" />
___
PD: Prefiero la opción anterior sobre el CSS personalizado ya que el CSS personalizado no forma parte de la API pública . Es decir, la salida del texto HTML del control en el DOM puede cambiar en futuras versiones de UI5. Implementar los métodos de gancho del Input(Base)Renderer, por otro lado, es un enfoque públicamente documentado .
contacto@primeinstitute.com
(+51) 1641 9379
(+57) 1489 6964
© 2025 Copyright. Todos los derechos reservados.
Desarrollado por Prime Institute