2020年10月13日火曜日

[Android] [Java] アクティビティ上の部分レイアウトをフラグメントで行うことについて

こんにちは、針山散策を今日もほのぼのと行います。


今回は、Android開発において、アクティビティ上の一部分をフラグメントとして切り替え


られるようにしようとしましたが苦戦しました。


レイアウトデザインは、xmlファイルに作成していくことになるのですが、


フラグメントについては"<fragment>"のタグを使用するようにして


レイアウト内に入れることで一部分をfragmentとして開放できます。


ここではFrameLayoutとしています。


[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">

   

   …

   

   <FrameLayout

       android:id="@+id/container"

       android:layout_width="match_parent"

       android:layout_height="100dp"

       android:layout_marginBottom="60dp"

       app:layout_constraintBottom_toTopOf="@+id/button_QA"

       app:layout_constraintTop_toTopOf="parent"

       tools:layout_editor_absoluteX="5dp">


       <fragment

           android:id="@+id/fragment_here"

           android:name="aa.co.jp.sample.Fragment_here"

           android:layout_width="match_parent"

           android:layout_height="match_parent"

            />

   </FrameLayout>


</androidx.constraintlayout.widget.ConstraintLayout>


また、フラグメント切り替え対象は以下のリンク先を参照していただき、


"fragment_here"を置き換えたいフラグメントにreplaceするようにすれば


切り替わります。(実際は上書きされます。)


android:name("aa.co.jp.sample")はパッケージ名です。


パッケージ名は変えてしまうとビルドが通らなくなってしまいますので気を付けましょう。


[今日のひとこと]

最近、JAVAプログラミング能力認定試験2級の過去問を見ましたが

難しそうです。

簡単でも困るので、とりあえずとれるように模索していこうと思います。

AndroidStudio環境でJavaアプリを作っていこうと思います。

まずは暗記カードアプリでも作ります


0 件のコメント:

コメントを投稿