En Android, ImageView se usa para mostrar imágenes. Las imágenes pueden ser de cualquier tipo y pueden obtenerse localmente o desde una red. Las imágenes se muestran sin ninguna operación en ImageView. Sin embargo, las imágenes se pueden rotar hasta cierto ángulo y mostrarse en ImageView. Entonces, en este artículo, le mostraremos cómo puede rotar una imagen mediante programación en un ángulo y mostrarla en ImageView en Android. Siga los pasos a continuación una vez que el IDE esté listo.
Implementación paso a paso
Paso 1: crea un nuevo proyecto en Android Studio
Para crear un nuevo proyecto en Android Studio, consulte Cómo crear/iniciar un nuevo proyecto en Android Studio . Demostramos la aplicación en Kotlin, así que asegúrese de seleccionar Kotlin como idioma principal al crear un nuevo proyecto.
Paso 2: agregar una imagen en res> carpeta dibujable
Copie la imagen en la carpeta dibujable en la carpeta de recursos como se muestra a continuación.
Paso 3: trabajar con el archivo activity_main.xml
Vaya a la aplicación > res > diseño > actividad_principal.xml y agregue el siguiente código a ese archivo. A continuación se muestra el código para el archivo activity_main.xml . Agregue un ImageView para mostrar la imagen, un EditText para ingresar grados (entero) para rotar y un Botón para ejecutar la rotación.
XML
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity"> <ImageView android:id="@+id/image_view_1" android:layout_width="300sp" android:layout_height="300sp" android:layout_centerHorizontal="true" android:layout_marginTop="50sp" android:src="@drawable/img"/> <EditText android:id="@+id/edit_text_1" android:layout_width="50sp" android:layout_height="60sp" android:inputType="number" android:layout_centerHorizontal="true" android:layout_below="@id/image_view_1" android:layout_marginTop="100sp"/> <Button android:id="@+id/button_1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_below="@id/edit_text_1" android:layout_marginTop="20sp" android:text="rotate"/> </RelativeLayout>
Paso 4: trabajar con el archivo MainActivity.kt
Vaya al archivo MainActivity.kt y consulte el siguiente código. A continuación se muestra el código del archivo MainActivity.kt . Se agregan comentarios dentro del código para comprender el código con más detalle.
Kotlin
package org.geeksforgeeks.programmaticallyrotateiv import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import android.widget.Button import android.widget.EditText import android.widget.ImageView import android.widget.Toast class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) // Declaring and Initializing the ImageView, // EditText and Button from the layout file val mImageView = findViewById<ImageView>(R.id.image_view_1) val mEditText = findViewById<EditText>(R.id.edit_text_1) val mButton = findViewById<Button>(R.id.button_1) // When button is clicked mButton.setOnClickListener { // EditText value is converted to // float and rotation is applied if(mEditText.text.isNotEmpty()){ val mAngleRotate = (mEditText.text.toString() + "f").toFloat() mImageView.rotation = mAngleRotate } else { Toast.makeText(applicationContext, "Field cannot be empty", Toast.LENGTH_SHORT).show() } } } }
Producción:
Puede ver que se muestra la imagen girada.
Publicación traducida automáticamente
Artículo escrito por aashaypawar y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA