Re: Ориентация

Возможно, телефон не поддерживает.

Re: Ориентация

alexander.klimoff wrote:

Возможно, телефон не поддерживает.

Возможно, но я перепробовал смартфон и несколько эмуляторов.

Re: Ориентация

Это точно работает на планшете Nexus 2013, только 90 и -90 работают наоборот. Другая система отсчета. А на телефонах и эмуляторах действительно у большинства это не сработает. Поэтому не стоит полагаться на этот код.

Re: Ориентация

Здравствуйте!
У меня возникла такая проблема при повороте экрана на 90 и -90 градусов, все поворачивается нормально. Но когда поворачиваю на 180 градусов ориентация экрана не меняется. В чем проблема?

Re: Ориентация

Добрый день,

по методам которые вызываются во время поворота экрана написал простенькую программу.
но вот странно при повороте отображаются не все события
activity xml:

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.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_height="match_parent"
    tools:context=".MainActivity">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical"
        android:padding="20dp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent">

        <TableLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content">

            <TableRow
                android:layout_width="match_parent"
                android:layout_height="match_parent">

                <CheckBox
                    android:id="@+id/wasPause"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:clickable="false"

                    android:text="@string/wasPause" />
            </TableRow>

            <TableRow
                android:layout_width="match_parent"
                android:layout_height="match_parent">

                <CheckBox
                    android:id="@+id/wasStop"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:clickable="false"

                    android:text="@string/wasStop" />
            </TableRow>

            <TableRow
                android:layout_width="match_parent"
                android:layout_height="match_parent">

                <CheckBox
                    android:id="@+id/wasDestroy"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:clickable="false"

                    android:text="@string/wasDestroy" />
            </TableRow>

            <TableRow
                android:layout_width="match_parent"
                android:layout_height="match_parent">

                <CheckBox
                    android:id="@+id/wasCreate"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:clickable="false"

                    android:text="@string/wasCreate" />

            </TableRow>

            <TableRow
                android:layout_width="match_parent"
                android:layout_height="match_parent">

                <CheckBox
                    android:id="@+id/wasStart"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:clickable="false"

                    android:text="@string/wasStart" />
            </TableRow>

            <TableRow
                android:layout_width="match_parent"
                android:layout_height="match_parent">

                <CheckBox
                    android:id="@+id/wasResume"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:clickable="false"

                    android:text="@string/wasResume" />
            </TableRow>

            <TableRow
                android:layout_width="match_parent"
                android:layout_height="match_parent">

                <CheckBox
                    android:id="@+id/wasSaveInstanceState"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:clickable="false"

                    android:text="@string/wasSaveInstanceState" />
            </TableRow>
        </TableLayout>

        <Button
            android:id="@+id/clearBoxes"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="@string/clearBoxes"
            android:onClick="clearBoxes"/>

    </LinearLayout>

</androidx.constraintlayout.widget.ConstraintLayout>

Activity class:

import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.view.View;
import android.widget.CheckBox;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        CheckBox mBox = findViewById(R.id.wasCreate);
        mBox.setChecked(true);
    }

    @Override
    protected void onStop() {
        super.onStop();

        CheckBox mBox = findViewById(R.id.wasStop);
        mBox.setChecked(true);
    }

    @Override
    protected void onPause() {
        super.onPause();

        CheckBox mBox = findViewById(R.id.wasPause);
        mBox.setChecked(true);
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();

        CheckBox mBox = findViewById(R.id.wasDestroy);
        mBox.setChecked(true);
    }

    @Override
    protected void onStart() {
        super.onStart();

        CheckBox mBox = findViewById(R.id.wasStart);
        mBox.setChecked(true);
    }

    @Override
    protected void onResume() {
        super.onResume();

        CheckBox mBox = findViewById(R.id.wasResume);
        mBox.setChecked(true);
    }

    @Override
    protected void onSaveInstanceState(@NonNull Bundle outState) {
        super.onSaveInstanceState(outState);

        CheckBox mBox = findViewById(R.id.wasSaveInstanceState);
        mBox.setChecked(true);
    }

    public void clearBoxes(View view) {

        int idBoxes[] = { R.id.wasSaveInstanceState,
                R.id.wasPause, R.id.wasDestroy,
                R.id.wasCreate,R.id.wasResume,
                R.id.wasStart, R.id.wasStop};

        for (int idBox: idBoxes) {
            CheckBox mBox = findViewById(idBox);
            mBox.setChecked(false);
        }
    }
}

А в результате только это после поворота:
screen
Почему так?