¿Cómo muestra iOS dinámicamente todo el texto en una etiqueta fija?
Pensando
Cree una vista como control principal de todo el contenido y agréguela a la etiqueta de arriba como soporte para mostrar. texto.
etiqueta de interfaz de usuario * etiqueta de contenido =[[etiqueta de interfaz de usuario alloc]init];[tamaño de etiqueta de contenidoToFit];etiqueta de contenido color de fondo =[color de interfaz de usuario claro color];_ contentLabel = contentLabel[auto agregar subvista: self . content label];
Agregue una capa de máscara a la capa de la vista de contenido y establezca su alcance en el límite de toda la vista, de modo que el contenido fuera de la vista no se muestre.
CAShapeLayer * capa de máscara = [capa CAShapeLayer]; ruta de la capa de máscara = [UIBezierPath bezierPathWithRect: self .
CGPathself. capa. máscara = capa de máscara;
Agregar animación a la etiqueta
CAKeyframeAnimation * key frame =[CAKeyframeAnimation key frame]; "; keyFrame.values = @[@(0), @(-space), @(0)]; fotograma clave. recuento de repeticiones = NSIntegerMax; fotograma clave. duración = self. velocidad * self. etiqueta de contenido. texto longitud del fotograma clave. Funciones de sincronización = @[[función CAMediaTimingFunction con nombre: kCAMediaTimingFunctionEaseInEaseOut], [función CAMediaTimingFunction con puntos de control: 0:0:0.5:0.5]]; animación: fotograma clave paraKey: nil];
Método de aplicación
//Crear CFDynamicalLabel * etiqueta de prueba =[[CFDynamicalLabel Alloc]initwithframe:cgrectmake(100, 300, 180, 21) ]; //Establece la velocidad de desplazamiento testLabel.speed = 0.6[self . view addSubview: test label]; //Establece las propiedades básicas testLabel.text = @"No quiero decir adiós, nunca diré adiós, cuanto mayor sea, más solo estaré"; etiqueta de prueba. color de texto = [color de interfaz de usuario color amarillo]; etiqueta de prueba. fuente = [fuente del sistema de fuente de interfaz de usuario de tamaño: 23]; etiqueta de prueba. color de fondo = [color de interfaz de usuario] color gris];
Resumen
Eso es todo por este artículo. Espero que el contenido de este artículo pueda aportar alguna ayuda a su estudio o trabajo. Si tienes alguna duda puedes dejar un mensaje para comunicarte.