Android

안드로이드 화면 이동/전환

주피터0410 2021. 12. 15. 15:53

기본폴더구조

* 추가되는 액티비티와 레이아웃 화일 그리고 AndroidManifest.xml 화일에 activity name 추가

Page1Activity.java

activity_page1.xml

 

* AndroidManifest.xml 화일에 activity name(.Page1Activity) 추가

<application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:roundIcon="@mipmap/ic_launcher_round"
    android:supportsRtl="true"
    android:theme="@style/Theme.PageActivity">
    <activity
        android:name=".MainActivity"
        android:exported="true">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

    <activity android:name=".Page1Activity" />
</application>

 

* MainActivity에 버튼 출력과 기능추가 (MainActivity.java)

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
		
        // 버튼에 대한 기능
        Button btn_page = (Button)findViewById(R.id.button);
        btn_page.setOnClickListener(new View.OnClickListener(){
            @Override
            public void onClick(View view){
            
            	// Intent(현재 클래스, 호출할 액티비티의 클래스)
                Intent intent = new Intent(getApplicationContext(), Page1Activity.class);
                startActivity(intent);
            }
        });
    }
}

 

* 메인화면 레이아웃 - 버튼 출력 (activity_main.xml)

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:contexte=".MainActivity"
    android:orientation="vertical">

    <Button
        android:id="@+id/button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="페이지이동"
        android:textSize="18dp" />

</LinearLayout>

 

* 추가될 페이지 class (Page1Activity.java)

public class Page1Activity extends AppCompatActivity {

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

 

* 추가될 페이지 layout (activity_page1.xml)

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="서브페이지"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintLeft_toLeftOf="parent"
    app:layout_constraintRight_toRightOf="parent"
    app:layout_constraintTop_toTopOf="parent" />

 

페이지 이동 버튼클릭시 화면이동