Android 기본 실습
Button 생성 및 Button을 눌렀을 때, Action 구현하기.
- 버튼1 : Toast 메시지 띄우기
- 버튼2 : 웹브라우저 실행
- 버튼3 : 전화걸기 화면 실행
화면구성
[activity_main.xml]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
|
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.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:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="162dp"
android:layout_marginLeft="162dp"
android:layout_marginTop="341dp"
android:layout_marginEnd="162dp"
android:layout_marginRight="162dp"
android:layout_marginBottom="342dp"
android:onClick="onButton1Clicked"
android:text="확인1"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="453dp"
android:layout_marginLeft="453dp"
android:layout_marginTop="112dp"
android:layout_marginEnd="453dp"
android:layout_marginRight="453dp"
android:layout_marginBottom="64dp"
android:onClick="onButton2Clicked"
android:text="네이버 접속하기"
app:layout_constraintBottom_toTopOf="@+id/button3"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/button" />
<Button
android:id="@+id/button3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="162dp"
android:layout_marginLeft="162dp"
android:layout_marginTop="48dp"
android:layout_marginEnd="162dp"
android:layout_marginRight="162dp"
android:layout_marginBottom="72dp"
android:onClick="onButton3Clicked"
android:text="전화 걸기"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/button2" />
</androidx.constraintlayout.widget.ConstraintLayout>
|
cs |
[MainActivity.java]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
package org.techtown.hello;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.widget.Toast;
import androidx.appcompat.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void onButton1Clicked(View v){
Toast.makeText(this, "확인 버튼이 눌렸습니당!", Toast.LENGTH_LONG).show();
}
public void onButton2Clicked(View v){
Intent myIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.naver.com"));
startActivity(myIntent);
}
public void onButton3Clicked(View v){
Intent myIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("tel:010-1111-2222"));
startActivity(myIntent);
}
}
|
cs |
각각의 버튼을 눌렀을 때, 해당되는 Action을 실행.
Intent
- 내가 하고자 하는 행위를 의미.
- 애플리케이션 구성 요소 간에 데이터를 전달하거나 실행하려는 기능이 무엇인지 안드로이드 플랫폼에 전달.
- 비유하자면, 우편물 같은 개념.
setContentView()
- 화면에 무엇을 보여줄지 결정하는 함수(메서드).
R.layout.activity_main
- 화면에 보여줄 대상이 되는 XML의 위치를 지정.
/app/res/layout/activity_main.xml
- 자바 소스에서 R.layout.activity_main이라고 입력하여 가져올 수 있는 프로젝트 안의 파일이며, 화면을 구성할 때 사용.
text 속성
- 화면에 보이는 글자를 변경할 때 사용하는 속성
onClick 속성
- 버튼을 클릭했을 때 어떤 메서드를 실행할 것인지 간단하게 지정할 수 있는 속성
Intent
- 어떤 기능을 실행할 것인지 지정할 때 사용.
Toast
- 화면에 잠깐 보였다 없어지는 메시지를 간단하게 보여주고 싶을 때 사용.
'안드로이드 > Android-Dev' 카테고리의 다른 글
Android # java file에서 layout 생성 (0) | 2019.12.14 |
---|---|
Android # 상태 드로어블 적용 (0) | 2019.12.13 |
Android # drawable 폴더(해상도) (0) | 2019.12.13 |
Android # 크기 표시 단위(px, dp, sp, em) (0) | 2019.12.12 |
Android # View 와 View group (0) | 2019.12.12 |