diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 9604b34..c2e9051 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -21,6 +21,19 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/java/otus/gpb/homework/fragments/ActivityA.kt b/app/src/main/java/otus/gpb/homework/fragments/ActivityA.kt new file mode 100644 index 0000000..447e3dd --- /dev/null +++ b/app/src/main/java/otus/gpb/homework/fragments/ActivityA.kt @@ -0,0 +1,20 @@ +package otus.gpb.homework.fragments + +import android.os.Bundle +import androidx.appcompat.app.AppCompatActivity + +class ActivityA : AppCompatActivity() { + + //private lateinit var fragmentA: FragmentA + + override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + setContentView(R.layout.activity_a) + // По клику на кнопку запустите фрагмент транзакцию которая открывает FragmentA. + // в нашем случае "По клику на кнопку" === "при запуске Actity A" + supportFragmentManager.beginTransaction() + .replace(R.id.container_FragmentA, FragmentA()) + .addToBackStack(null) + .commit() + } +} \ No newline at end of file diff --git a/app/src/main/java/otus/gpb/homework/fragments/ActivityB.kt b/app/src/main/java/otus/gpb/homework/fragments/ActivityB.kt new file mode 100644 index 0000000..9d95c7d --- /dev/null +++ b/app/src/main/java/otus/gpb/homework/fragments/ActivityB.kt @@ -0,0 +1,35 @@ +package otus.gpb.homework.fragments + +import android.content.res.Configuration +import android.os.Bundle +import android.view.View +import android.widget.FrameLayout +import androidx.appcompat.app.AppCompatActivity +import java.util.Objects + +class ActivityB : AppCompatActivity() { + + override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + setContentView(R.layout.activity_b) + + // ландшафтный режим - отобразить оба фрагмента одновременно + if (Objects.equals(Configuration.ORIENTATION_LANDSCAPE, resources.configuration.orientation)) { + findViewById(R.id.frameLayout_bb).visibility = View.VISIBLE + supportFragmentManager.beginTransaction() + .replace(R.id.frameLayout_ba, FragmentBA()) + .replace(R.id.frameLayout_bb, FragmentBB()) + .commit() + } + else { + // портретный режим режим - отобразить только один фрагмент + findViewById(R.id.frameLayout_bb).visibility = View.GONE + supportFragmentManager.beginTransaction() + .replace(R.id.frameLayout_ba, FragmentBA()) + .commit() + } + } + + private fun isLandscape() = + Objects.equals(Configuration.ORIENTATION_LANDSCAPE, resources.configuration.orientation) +} \ No newline at end of file diff --git a/app/src/main/java/otus/gpb/homework/fragments/FragmentA.kt b/app/src/main/java/otus/gpb/homework/fragments/FragmentA.kt new file mode 100644 index 0000000..14a1f91 --- /dev/null +++ b/app/src/main/java/otus/gpb/homework/fragments/FragmentA.kt @@ -0,0 +1,59 @@ +package otus.gpb.homework.fragments + +import android.os.Bundle +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import android.widget.Button +import androidx.activity.OnBackPressedCallback +import androidx.fragment.app.Fragment + + +class FragmentA : Fragment() { + + override fun onCreateView( + inflater: LayoutInflater, + container: ViewGroup?, + savedInstanceState: Bundle?, + ): View? { + val view = inflater.inflate(R.layout.fragment_a, container, false) + val btnOpenFragmentAA = view.findViewById