신규 블로그를 만들었습니다!

2020년 이후부터는 아래 블로그에서 활동합니다.

댓글로 질문 주셔도 확인하기 어려울 수 있습니다.

>> https://bluemiv.tistory.com/

뷰 화면 바꾸기

버튼을 만들어서 메뉴화면을 띄어주는 기능을 만들어본다.

"onButton3Clicked"를 정의한다.( 이 위의 onButton1Clicked, onButton2Clicked는 다른 예제이므로 무시한다...)

 

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.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">

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:onClick="onButton1Clicked"
        android:text="버튼 클릭"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

    <Button
        android:id="@+id/button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:onClick="onButton2Clicked"
        android:text="NAVER"
        tools:layout_editor_absoluteX="0dp"
        tools:layout_editor_absoluteY="0dp" />

    <Button
        android:id="@+id/button2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:onClick="onButton3Clicked"
        android:text="메뉴화면"
        tools:layout_editor_absoluteX="0dp"
        tools:layout_editor_absoluteY="48dp" />

</android.support.constraint.ConstraintLayout>
​

 

MainActivity.java

package com.tistory.hongku.hello;

import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {

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

    // 토스트 메세지 띄우기
    public void onButton1Clicked(View view){
        // LENGTH_LONG : 길게 화면에 나타남
        // LENGTH_SHORT : 짧게 화면에 나타남
        Toast.makeText(getApplicationContext(), "버튼이 눌렸습니다!", Toast.LENGTH_LONG).show();
    }

    // 웹 페이지 띄우기
    public void onButton2Clicked(View view){
        Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("https://m.naver.com"));
        startActivity(intent);
    }

    // 메인 화면 띄우기
    public void onButton3Clicked(View view){
        Intent intent = new Intent(this, MenuActivity.class);
        startActivity(intent);
    }
}​

 

메뉴 화면

메뉴 화면 뷰를 만들고 그안에 버튼을 만들어서 버튼을 눌렀을때, 이전화면으로 돌아가도록 한다.

 

새로운 뷰 화면을 만든다.

이름은 MenuActivity로 정했다.

 

finish()를 이용하면 현재 화면을 종료한다.

 

activity_menu.xml

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.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=".MenuActivity">

    <Button
        android:id="@+id/button3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:onClick="onBackButtonClicked"
        android:text="이전으로"
        tools:layout_editor_absoluteX="148dp"
        tools:layout_editor_absoluteY="231dp" />
</android.support.constraint.ConstraintLayout>​

 

MenuActivity.java

package com.tistory.hongku.hello;

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;

public class MenuActivity extends AppCompatActivity {

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

    // 이전으로 돌아가기
    public void onBackButtonClicked(View view){
        finish(); // 현재 이 화면을 없애줌
    }
}​

 

결과 화면

메뉴화면이라는 버튼을 누르면 새로운 뷰 화면이 띄어진다.

 

새로운 뷰 화면에서 이전으로 버튼을 누르면 현재 화면이 종료되면서 이전 화면이 보여진다.

 

 

  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기