개발/책

[안드로이드 프로그래밍] 2장 직접 풀어보기 2-3

Hyunsun 2021. 9. 27. 22:22
728x90
한빛아카데미 Android Studio를 활용한 안드로이드 프로그래밍 6판

 

p.104 직접 풀어보기 2-3

 

다음 그림과 같이 버튼 4개를 만들고 각 버튼을 클릭하면 필요한 내용이 작동하는 FourButton 프로젝트를 작성하라. 각 버튼은 다른 색상으로 변경한다.

 

코드

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >
    
    <Button
        android:id="@+id/btnNate"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="#aaaaaa"
        android:text="네이트 홈페이지 열기" />
        
    <Button
        android:id="@+id/btn911"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="#00ff00"
        android:text="911 응급전화 걸기" />
        
    <Button
        android:id="@+id/btnGal"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="#ff0000"
        android:text="갤러리 열기" />
        
    <Button
        android:id="@+id/btnEnd"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="#ffff00"
        android:text="끝내기" />
        
</LinearLayout>

 

MainActivity.java

package com.cookandroid.test;

import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

public class MainActivity extends AppCompatActivity {
    Button button1, button2, button3, button4;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        button1 = findViewById(R.id.btnNate);
        button2 = findViewById(R.id.btn911);
        button3 = findViewById(R.id.btnGal);
        button4 = findViewById(R.id.btnEnd);
        
        button1.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                Intent mIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://m.nate.com"));
                startActivity(mIntent);
            }
        });
        
        button2.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                Intent mIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("tel:/911"));
                startActivity(mIntent);
            }
        });
        
        button3.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                Intent mIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("content://media/internal/images/media"));
                startActivity(mIntent);
            }
        });
        
        button4.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                finish();
            }
        });
    }
}

 

결과

728x90