본문 바로가기

App Dev/Android

안드로이드 앱 새로운 페이지 생성 및 클릭 이벤트

반응형

안드로이드는 디자인이 조금 특이하다 xml 파일로 구성 되어있다. 

<!-- 데드 리프트-->
                <androidx.appcompat.widget.AppCompatButton
                    android:id="@+id/goToIsokineticExerciseTest_DeadLift"
                    android:layout_width="220dp"
                    android:layout_height="170dp"
                    android:layout_marginEnd="10dp"
                    android:background="@drawable/muscle_func_check_button_bg"
                    android:text="데드\n리프트"
                    android:theme="@style/cyberUpperCommandButton" />

데드리프트 버튼은 이와 같이 코드로 작성되어 있다. 

그러면 연결된 액션 코드는 ?

goToIsokineticExerciseTest_DeadLift

해당 id 값으로 연결된다. 

Button DeadLift = findViewById(R.id.goToIsokineticExerciseTest_DeadLift);
import android.content.Intent;

DeadLift.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                /*ft = manager.beginTransaction();
                deadLiftDescription.setArguments(bundle);
                ft.replace(R.id.fragmentContainerView3, deadLiftDescription);
                ft.commit();*/
                Intent intent = new Intent(IsokineticsExerciseTest2.this, DeadLiftActivity.class);
                startActivity(intent);
            }
        });

클릭 이벤트를

Intent

를 사용해서 변경해준다. 

DeadLiftActivity

class 를 작성해줘야한다. 

주로 

DeadLiftActivity 클래스 생성:

a. Android Studio에서 프로젝트 창을 엽니다.

b. 'app > java > co.kr.sangji' 폴더에 우클릭합니다.

c. New > Activity > Empty Activity를 선택합니다.

d. "DeadLiftActivity"라는 이름으로 새 액티비티를 생성합니다.

e. 생성된 DeadLiftActivity.java 파일은 다음과 같은 기본 구조를 가집니다:

package co.kr.sangji

import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle

class DeadLiftActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_dead_lift)
    }
}
  • DeadLiftActivity 클래스가 실제로 존재해야 합니다.
  • DeadLiftActivity가 AndroidManifest.xml 파일에 등록되어 있어야 합니다.
<activity
    android:name=".IsokineticsExerciseTest2"
    android:label="근기능검사 - 등속성검사"
    android:parentActivityName=".ExerciseFunctionTest" />
<activity
    android:name=".DeadLiftActivity"
    android:label="데드리프트"
    android:parentActivityName=".IsokineticsExerciseTest2" />

AndroidManifest.xml 

이와 같은 일련의 순서로 등록이 되어야 새로운 페이지가 띄워지게 됩니다. 

반응형