본문 바로가기
안드로이드

안드로이드 스튜디오 버튼을 누르면 이동(인텐트) 2가지 방법

by 아스키의 공부방 2019. 10. 31.
728x90
반응형

버튼을 추가합니다.

 

여기에서는 큰 의미가 없지만 균등하게 배치하고 싶다면

버튼의 layout_weight값을 각각 1로 설정해주면 됩니다.

잘 사용하면 유용하게 사용할 수 있습니다.

 

이제 각 버튼의 onClick속성에 값을 입력합니다.

텍스트 탭으로 이동한 후 알트+엔터를 눌러 각 속성값을 추가합니다

소스를 입력합니다.

 

package com.example.myapplication;

import androidx.appcompat.app.AppCompatActivity;

import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.Gravity;
import android.view.View;
import android.widget.ImageView;
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 onBtnClickedCall(View view) {
        Intent myIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("tel:010-1234-5678"));
        startActivity(myIntent);
    }

    public void onBtnClickedNaver(View view) {
        Intent myIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://m.naver.com"));
        startActivity(myIntent);
    }
}

 

Intent에 대해서 잘 모르신다면 복사 붙여넣기 하지마시고 직접 입력하면서 감을 찾아보시기 바랍니다.

 

실행화면

전화걸기

 

네이버연결

 

 

다음으로 다른 액티비티 화면을 띄우는 방법을 알아보겠습니다.

버튼을 하나 더 추가합니다.

좌측에서 우클릭하여 New > Activity > Empty Activity를 클릭

이름을 원하는대로 변경합니다.

Finish를 선택합니다.

MenuActivity.xml 과 클래스가 생성됩니다.

다시 activity_main.xml로 넘어와 버튼3에 onClick값을 줍니다.

소스 전문

 

package com.example.myapplication;

import androidx.appcompat.app.AppCompatActivity;

import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.Gravity;
import android.view.View;
import android.widget.ImageView;
import android.widget.Toast;

import java.net.URI;

public class MainActivity extends AppCompatActivity {

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

    public void onBtnClickedCall(View view) {
        Intent myIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("tel:010-1234-5678"));
        startActivity(myIntent);
    }

    public void onBtnClickedNaver(View view) {
        Intent myIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://m.naver.com"));
        startActivity(myIntent);
    }

    public void onBtnClickedActivity(View view) {
        finish();
        Intent myIntent = new Intent(MainActivity.this, MenuActivity.class);
        startActivity(myIntent);
    }
}

 

finish();에 대해서는 다음에 설명하겠습니다.

 

 

실제 실행 화면

 

 

728x90
반응형