Как повернуть TextView не только его текст

#android #textview

#Android #textview

Вопрос:

Мне нужно повернуть мое текстовое представление, поэтому я просто использовал этот код:

 <TextView
                        android:rotation="90"
                        android:layout_&ravity="center"
                        android:id="@ id/price"
                        android:layout_width="wrap_content"
                        android:layout_hei&ht="wrap_content"
                        android:text="@strin&/stock_price"
                        android:textAppearance="@style/font"
                        android:textColor="@color/&ray" /&&t;

  

но проблема в том, что мой текст будет поворачиваться, а не в текстовом представлении. это показано на рисунке ниже:

Как я могу повернуть весь текстовый вид, а не только его текст? (как вы можете видеть на изображении, текст «мой повернутый текст» повернут на 90 градусов, но сам TextView по-прежнему находится в горизонтальной строке.

Я также попытался исправить это с помощью анимации. итак, я попробовал этот код, но ничего не изменилось:

  bindin&.price.animate().rotation(90F).start()
  

любая помощь будет оценена.

Комментарии:

1. к чему вы это клоните?

2. У меня есть Ima&eView и этот TextView рядом друг с другом в линейной компоновке с горизонтальной ориентацией, я хочу, чтобы вид изображения был точно в конце TextView, но когда я поворачиваю его, между ними остается пустое пространство. @MohamedAbdelraZek

3. вы поворачиваете их оба?

4. «оба», вы имеете в виду просмотр изображения и текстовый просмотр? нет, просто текстовое представление. представьте, что у вас есть картинка, в левой части которой есть текст, этот текст написан вертикально.@ Мохамед Абдельразек

5. Привет, у тебя есть ответ на это?

Ответ №1:

Вы можете сгруппировать их оба внутри ConstraintLayout и повернуть все ViewGroup примерно так :

 <?xml version="1.0" encodin&="utf-8"?&&t;
<androidx.constraintlayout.wid&et.ConstraintLayout 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_hei&ht="match_parent"&&t;

    <androidx.constraintlayout.wid&et.ConstraintLayout
        android:layout_width="wrap_content"
        android:layout_hei&ht="wrap_content"
        android:rotation="90"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.5"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"&&t;

        <TextView
            android:id="@ id/tex"
            android:layout_width="wrap_content"
            android:layout_hei&ht="wrap_content"
            android:text="TextView"
            android:textColor="#FFFFFF"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintHorizontal_bias="0.5"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="parent" /&&t;

        <Ima&eView
            android:layout_width="90dp"
            android:layout_hei&ht="90dp"
            android:layout_mar&inTop="8dp"
            android:src="@mipmap/ic_launcher"
            app:layout_constraintEnd_toEndOf="@ id/tex"
            app:layout_constraintStart_toStartOf="@ id/tex"
            app:layout_constraintTop_toBottomOf="@ id/tex" /&&t;
    </androidx.constraintlayout.wid&et.ConstraintLayout&&t;

</androidx.constraintlayout.wid&et.ConstraintLayout&&t;
  

изменение ориентации дает вам это :

Обновить

если вы хотите повернуть TextView только, вам потребуется два шага

1-&&t; Повернуть весь макет (содержащий оба), скажем, на «90» градусов

2-&&t; Верните Ima&eView обратно в исходное положение, повернув его на «-90» градусов

Комментарии:

1. это приведет к повороту как изображения, так и текста. Я просто хочу повернуть текстовый вид

2. это было то же самое @mohammad после поворота всего макета поверните изображение отдельно на -90 градусов

3. Нет, это не работает. поскольку ограничение будет установлено для текстового представления, делая это, вы просто поворачиваете текст текстового представления, а ограничение останется таким же, как и раньше