AndroidStudio(java)での画面遷移について

実現したいこと

activity_main.xmlファイル上の「設定」ボタンを押したとき、users_information.xmlファイルに移動したい。

発生している問題・分からないこと

activity_main.xmlファイルとusers_information.xmlファイルの二つのファイルは出来ていますが、それに適応している2つのjavaファイルのプログラムをどうしたら良いのかがわからない。

該当のソースコード

activity_main.xml

1<?xml version="1.0" encoding="utf-8"?> 2<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" 3 xmlns:app="http://schemas.android.com/apk/res-auto" 4 xmlns:tools="http://schemas.android.com/tools" 5 android:id="@+id/main" 6 android:layout_width="match_parent" 7 android:layout_height="match_parent" 8 tools:context=".MainActivity"> 9 10 <Button 11 android:id="@+id/informationBtn1" 12 android:layout_width="wrap_content" 13 android:layout_height="wrap_content" 14 android:layout_margin="16dp" 15 android:text="@string/informationBtn1" 16 android:textSize="25sp" 17 android:textColor="@color/black" 18 style="@style/Widget.Material3.Button.TextButton.Icon" 19 app:layout_constraintStart_toStartOf="parent" 20 app:layout_constraintTop_toTopOf="parent" /> 21 22 <TextView 23 android:id="@+id/name" 24 android:layout_width="wrap_content" 25 android:layout_height="wrap_content" 26 android:layout_margin="25dp" 27 android:text="@string/name_label" 28 android:textIsSelectable="false" 29 android:textSize="30sp" 30 android:textColor="@color/my_custom_color" 31 android:textStyle="bold" 32 app:layout_constraintEnd_toEndOf="parent" 33 app:layout_constraintTop_toTopOf="parent" /> 34 35 <Button 36 android:id="@+id/tellBtn2" 37 android:layout_width="wrap_content" 38 android:layout_height="wrap_content" 39 android:layout_marginTop="-55dp" 40 android:text="@string/telephoneBtn2" 41 android:textSize="56sp" 42 android:textStyle="bold" 43 app:layout_constraintBottom_toBottomOf="parent" 44 app:layout_constraintEnd_toEndOf="parent" 45 app:layout_constraintStart_toStartOf="parent" 46 app:layout_constraintTop_toBottomOf="@id/name" /> 47 48</androidx.constraintlayout.widget.ConstraintLayout>

MainActivity.java

1package com.example.mizukagami; 2 3import android.content.Intent; 4import android.os.Bundle; 5import android.view.View; 6import android.widget.Button; 7import android.widget.TextView; 8 9import androidx.activity.EdgeToEdge; 10import androidx.appcompat.app.AppCompatActivity; 11import androidx.core.graphics.Insets; 12import androidx.core.view.ViewCompat; 13import androidx.core.view.WindowInsetsCompat; 14 15public class MainActivity extends AppCompatActivity implements View.OnClickListener { 16 17 private Button informationBtn1, tellBtn2; 18 private TextView name; 19 20 @Override 21 protected void onCreate(Bundle savedInstanceState) { 22 super.onCreate(savedInstanceState); 23 EdgeToEdge.enable(this); 24 setContentView(R.layout.activity_main); 25 ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main), (v, insets) -> { 26 Insets systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars()); 27 v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom); 28 return insets; 29 }); 30 31 // idからviewを見つける 32 Button information_btn1 = findViewById(R.id.informationBtn1); 33 String inform = "設定"; 34 information_btn1.setText(inform); 35 information_btn1.setOnClickListener(v -> { 36 Intent intent = new Intent(MainActivity.this, UsersInformation.class); 37 startActivity(intent); 38 }); 39 40 TextView name = findViewById(R.id.name); 41 String label = "名前"; 42 name.setText(label); 43 44 Button tell_btn2 = findViewById(R.id.tellBtn2); 45 String call = "○○"; 46 tell_btn2.setText(call); 47 } 48 49 @Override 50 public void onClick(View v) { 51 // ここには他のクリックイベントの処理を書くことができます 52 } 53} 54

users_information.xml

1<?xml version="1.0" encoding="utf-8"?> 2<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 3 xmlns:tools="http://schemas.android.com/tools" 4 android:layout_width="match_parent" 5 android:layout_height="match_parent" 6 tools:context=".MainActivity"> 7 8 <LinearLayout 9 android:id="@+id/content_layout" 10 android:layout_width="match_parent" 11 android:layout_height="match_parent" 12 android:layout_above="@+id/btn_withdraw" 13 android:layout_marginBottom="-1dp" 14 android:orientation="vertical" 15 android:padding="16dp"> 16 17 <!-- ご使用者様 --> 18 <TextView 19 android:layout_width="wrap_content" 20 android:layout_height="wrap_content" 21 android:paddingTop="3dp" 22 android:paddingBottom="1dp" 23 android:text="@string/use_label" 24 android:textSize="18sp" /> 25 26 <!-- ご使用者様の入力欄 --> 27 <EditText 28 android:layout_width="match_parent" 29 android:layout_height="wrap_content" 30 android:background="@android:drawable/edit_text" 31 android:hint="名前を持ってくる"/> 32 33 <!-- 電話番号 --> 34 <TextView 35 android:layout_width="wrap_content" 36 android:layout_height="wrap_content" 37 android:paddingTop="3dp" 38 android:paddingBottom="1dp" 39 android:text="@string/phoneNo_label" 40 android:textSize="18sp" /> 41 42 <EditText 43 android:layout_width="match_parent" 44 android:layout_height="wrap_content" 45 android:background="@android:drawable/edit_text" 46 android:hint="電話番号を入力" 47 android:inputType="phone" /> 48 49 <!-- メールアドレス --> 50 <TextView 51 android:layout_width="wrap_content" 52 android:layout_height="wrap_content" 53 android:paddingTop="3dp" 54 android:paddingBottom="1dp" 55 android:text="@string/email_label" 56 android:textSize="18sp" /> 57 58 <EditText 59 android:layout_width="match_parent" 60 android:layout_height="wrap_content" 61 android:background="@android:drawable/edit_text" 62 android:hint="メールアドレスを入力" 63 android:inputType="textEmailAddress" /> 64 65 <!-- ご登録者様メールアドレス --> 66 <TextView 67 android:layout_width="wrap_content" 68 android:layout_height="wrap_content" 69 android:paddingTop="3dp" 70 android:paddingBottom="1dp" 71 android:text="@string/entry_label" 72 android:textSize="18sp" /> 73 74 <EditText 75 android:layout_width="match_parent" 76 android:layout_height="wrap_content" 77 android:background="@android:drawable/edit_text" 78 android:hint="@string/email_hint" 79 android:inputType="textEmailAddress" /> 80 81 <!-- ボタンを含むレイアウト --> 82 <LinearLayout 83 android:layout_width="match_parent" 84 android:layout_height="wrap_content" 85 android:gravity="center" 86 android:orientation="horizontal" 87 android:paddingTop="16dp"> 88 89 <Button 90 android:id="@+id/btn_back" 91 android:layout_width="wrap_content" 92 android:layout_height="wrap_content" 93 android:text="@string/back_label" /> 94 95 <Button 96 android:id="@+id/btn_confirm" 97 android:layout_width="wrap_content" 98 android:layout_height="wrap_content" 99 android:layout_marginStart="16dp" 100 android:text="@string/decide_label" /> 101 </LinearLayout> 102 103 </LinearLayout> 104 105 <Button 106 android:id="@+id/btn_withdraw" 107 android:layout_width="wrap_content" 108 android:layout_height="wrap_content" 109 android:text="@string/leave_label" 110 android:layout_alignParentBottom="true" 111 android:layout_alignParentEnd="true" /> 112 113</RelativeLayout> 114

UsersInformation.java

1package com.example.mizukagami; 2 3import android.os.Bundle; 4 5import androidx.activity.EdgeToEdge; 6import androidx.appcompat.app.AppCompatActivity; 7import androidx.core.graphics.Insets; 8import androidx.core.view.ViewCompat; 9import androidx.core.view.WindowInsetsCompat; 10 11public class UsersInformation extends AppCompatActivity { 12 13 @Override 14 protected void onCreate(Bundle savedInstanceState) { 15 super.onCreate(savedInstanceState); 16 EdgeToEdge.enable(this); 17 setContentView(R.layout.users_information); 18 ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main), (v, insets) -> { 19 Insets systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars()); 20 v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom); 21 return insets; 22 }); 23 } 24}

試したこと・調べたこと

上記の詳細・結果

ChatGPT等にも聞いたが、現状「設定」ボタンを押すとAndroidのホーム画面に戻ってしまう。

補足

特になし

コメントを投稿

0 コメント