I am Making a Scientific calculator with a scrollable keyboard but it didn't working same as I thing this should work
I make 2 Grid layout with 16 buttons each I add both GridLayout in the horizontal Scroll View
I want if I scroll, all 16 button in gridlayout 1 should scroll at the same time and grid layout 2 16 button will come to there place
This is the XML file that I create I didn't do anything in java file
<?xml version="1.0" encoding="utf-8"?>
<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">
<TextView
android:id="@+id/textView"
android:layout_width="438dp"
android:layout_height="69dp"
android:text="TextView"
app:layout_constraintBottom_toTopOf="@+id/editTextTextPersonName"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="1.0" />
<EditText
android:id="@+id/editTextTextPersonName"
android:layout_width="431dp"
android:layout_height="133dp"
android:ems="10"
android:inputType="textPersonName"
android:text="Name"
app:layout_constraintBottom_toTopOf="@+id/linearLayout"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.571"
app:layout_constraintStart_toStartOf="parent"
tools:ignore="MissingConstraints" />
<LinearLayout
android:id="@+id/linearLayout"
android:layout_width="436dp"
android:layout_height="98dp"
android:orientation="horizontal"
app:layout_constraintBottom_toTopOf="@+id/horizontalScrollView"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent">
<Button
android:id="@+id/button1"
android:layout_width="107dp"
android:layout_height="99dp"
android:layout_weight="1"
android:text="Button" />
<Button
android:id="@+id/button2"
android:layout_width="107dp"
android:layout_height="99dp"
android:layout_weight="1"
android:text="Button" />
<Button
android:id="@+id/button3"
android:layout_width="107dp"
android:layout_height="99dp"
android:layout_weight="1"
android:text="Button" />
<Button
android:id="@+id/button4"
android:layout_width="107dp"
android:layout_height="99dp"
android:layout_weight="1"
android:text="Button" />
</LinearLayout>
<HorizontalScrollView
android:id="@+id/horizontalScrollView"
android:layout_width="451dp"
android:layout_height="397dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="parent"
tools:ignore="MissingConstraints">
<androidx.gridlayout.widget.GridLayout
android:layout_width="120dp"
android:layout_height="match_parent"
>
<Button
android:id="@+id/button5"
android:layout_width="107dp"
android:layout_height="99dp"
android:text="Button" />
<Button
android:id="@+id/button6"
android:layout_width="107dp"
android:layout_height="99dp"
android:text="Button" />
<Button
android:id="@+id/button7"
android:layout_width="107dp"
android:layout_height="99dp"
android:text="Button" />
<Button
android:id="@+id/button8"
android:layout_width="107dp"
android:layout_height="99dp"
android:text="Button" />
<Button
android:id="@+id/button9"
android:layout_width="107dp"
android:layout_height="99dp"
android:text="Button"
app:layout_column="0"
app:layout_row="1" />
<Button
android:id="@+id/button10"
android:layout_width="107dp"
android:layout_height="99dp"
android:text="Button" />
<Button
android:id="@+id/button11"
android:layout_width="107dp"
android:layout_height="99dp"
android:text="Button" />
<Button
android:id="@+id/button12"
android:layout_width="107dp"
android:layout_height="99dp"
android:text="Button" />
<Button
android:id="@+id/button13"
android:layout_width="107dp"
android:layout_height="99dp"
android:text="Button"
app:layout_column="0"
app:layout_row="2" />
<Button
android:id="@+id/button14"
android:layout_width="107dp"
android:layout_height="99dp"
android:text="Button" />
<Button
android:id="@+id/button15"
android:layout_width="107dp"
android:layout_height="99dp"
android:text="Button" />
<Button
android:id="@+id/button18"
android:layout_width="107dp"
android:layout_height="99dp"
android:text="Button" />
<Button
android:id="@+id/button17"
android:layout_width="107dp"
android:layout_height="99dp"
android:text="Button"
app:layout_column="0"
app:layout_row="3" />
<Button
android:id="@+id/button19"
android:layout_width="107dp"
android:layout_height="99dp"
android:text="Button" />
<Button
android:id="@+id/button20"
android:layout_width="107dp"
android:layout_height="99dp"
android:text="Button"
app:layout_column="3"
app:layout_row="3" />
<Button
android:id="@+id/button21"
android:layout_width="107dp"
android:layout_height="99dp"
android:text="Button"
app:layout_column="2"
app:layout_row="3" />
</androidx.gridlayout.widget.GridLayout>
<androidx.gridlayout.widget.GridLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<Button
android:id="@+id/button22"
android:layout_width="107dp"
android:layout_height="99dp"
android:text="Button" />
<Button
android:id="@+id/button23"
android:layout_width="107dp"
android:layout_height="99dp"
android:text="Button" />
<Button
android:id="@+id/button24"
android:layout_width="107dp"
android:layout_height="99dp"
android:text="Button" />
<Button
android:id="@+id/button25"
android:layout_width="107dp"
android:layout_height="99dp"
android:text="Button" />
<Button
android:id="@+id/button26"
android:layout_width="107dp"
android:layout_height="99dp"
android:text="Button"
app:layout_column="0"
app:layout_row="1" />
<Button
android:id="@+id/button27"
android:layout_width="107dp"
android:layout_height="99dp"
android:text="Button" />
<Button
android:id="@+id/button28"
android:layout_width="107dp"
android:layout_height="99dp"
android:text="Button" />
<Button
android:id="@+id/button29"
android:layout_width="107dp"
android:layout_height="99dp"
android:text="Button" />
<Button
android:id="@+id/button30"
android:layout_width="107dp"
android:layout_height="99dp"
android:text="Button"
app:layout_column="0"
app:layout_row="2" />
<Button
android:id="@+id/button31"
android:layout_width="107dp"
android:layout_height="99dp"
android:text="Button" />
<Button
android:id="@+id/button32"
android:layout_width="107dp"
android:layout_height="99dp"
android:text="Button" />
<Button
android:id="@+id/button33"
android:layout_width="107dp"
android:layout_height="99dp"
android:text="Button" />
<Button
android:id="@+id/button34"
android:layout_width="107dp"
android:layout_height="99dp"
android:text="Button"
app:layout_column="0"
app:layout_row="3" />
<Button
android:id="@+id/button35"
android:layout_width="107dp"
android:layout_height="99dp"
android:text="Button" />
<Button
android:id="@+id/button36"
android:layout_width="107dp"
android:layout_height="99dp"
android:text="Button" />
<Button
android:id="@+id/button37"
android:layout_width="107dp"
android:layout_height="99dp"
android:text="Button"
app:layout_column="3"
app:layout_row="3" />
</androidx.gridlayout.widget.GridLayout>
</HorizontalScrollView>
</ConstraintLayout>