오늘이라도
[Android] 3. 아이콘 지정, 버튼 - 알람창 띄우기, 버튼 - 네이버 연결, 버튼 - 전화 연결, 전화 번호 입력 칸 만들기 본문
취업성공패키지 SW 개발자 교육/Android
[Android] 3. 아이콘 지정, 버튼 - 알람창 띄우기, 버튼 - 네이버 연결, 버튼 - 전화 연결, 전화 번호 입력 칸 만들기
upcake_ 2020. 5. 8. 09:29반응형
https://github.com/upcake/Class_Examples
교육 중에 작성한 예제들은 깃허브에 올려두고 있습니다.
gif 파일은 클릭해서 보는 것이 정확합니다.
- 아이콘 지정하기 -
- 애플리케이션에 필요한 이미지 파일의 대부분은 res\drawable 폴더에 저장한다.
- 저장할 때 v24를 선택하지 않도록 주의한다.
- AndroidManifest.xml의 7번, 9번 라인을 수정하여 애플리케이션의 아이콘을 변경할 수 있다.
- 버튼 - 알람 창 띄우기 -
- Attributes 탭의 id 칸으로 id를 지정하고 onClick 칸으로 버튼을 지정했을 때 발생하는 메서드의 이름을 지정한다.
- 스마트폰 화면에 작은 알람 창을 띄우는 것을 toast라 한다.
- Toast 자동 완성을 할 때 Create a new Toast로 하는 것을 권장한다.
package com.example.my01_helloworld;
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) { // onCreate() : 메모리에 등록하면서 작동하는 메서드
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); // setContentView() : 매개 변수를 화면에 출력하는 메서드
// R. : resource(res)의 약자
}
public void btn1Clicked(View view) {
Toast.makeText(this, "버튼1 클릭!", Toast.LENGTH_SHORT).show();
// context : 어디에 있는지 환경을 지정
// this : 현재 참조중인 MainActivity를 지정
// LENGTH_SHORT : 2 ~ 3초 정도 보여줌
// LENGTH_LONG : 5초 정도 보여줌
}
}
- 버튼 - 네이버 연결 -
package com.example.my01_helloworld;
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) { // onCreate() : 메모리에 등록하면서 작동하는 메서드
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); // setContentView() : 매개 변수를 화면에 출력하는 메서드
// R. : resource(res)의 약자
}
public void btn1Clicked(View view) {
Toast.makeText(this, "버튼1 클릭!", Toast.LENGTH_SHORT).show();
// context : 어디에 있는지 환경을 지정
// this : 현재 참조중인 MainActivity를 지정
// LENGTH_SHORT : 2 ~ 3초 정도 보여줌
// LENGTH_LONG : 5초 정도 보여줌
}
public void btn2Clicked(View view) {
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("https://m.naver.com"));
startActivity(intent);
// Intent : 무언가 새 창을 띄울때는 Intent를 사용한다.
}
}
- 버튼 - 전화 연결 -
package com.example.my01_helloworld;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
import androidx.appcompat.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity {
Button btnCall; // 전역 변수
@Override
protected void onCreate(Bundle savedInstanceState) { // onCreate() : 메모리에 등록하면서 작동하는 메서드
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); // setContentView() : 매개 변수를 화면에 출력하는 메서드
// R. : resource(res)의 약자
btnCall = findViewById(R.id.btnCall); // 지역 변수
// btnCall이란 id를 가진 객체를 찾아서 btnCall 변수에 입력한다.
btnCall.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(Intent.ACTION_DIAL, Uri.parse("tel:010-1234-5678"));
startActivity(intent);
}
});
}
public void btn1Clicked(View view) {
Toast.makeText(this, "버튼1 클릭!", Toast.LENGTH_SHORT).show();
// context : 어디에 있는지 환경을 지정
// this : 현재 참조중인 MainActivity를 지정
// LENGTH_SHORT : 2 ~ 3초 정도 보여줌
// LENGTH_LONG : 5초 정도 보여줌
}
public void btn2Clicked(View view) {
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("https://m.naver.com"));
startActivity(intent);
// Intent : 무언가 새 창을 띄울때는 Intent를 사용한다.
}
}
- 전화번호 입력 칸 만들기 -
- Palette - Text - Plain Text로 입력 칸을 만든다.
- Attributes - hint는 빈칸에 나오는 회색 글자를 지정할 수 있는 속성이다.
- inputType 속성으로 입력 칸에 들어올 문자의 종류를 지정할 수 있다.
- number를 체크하면 숫자만 입력할 수 있는 칸이 된다.
- 입력 칸의 id를 etPhoneNum으로 설정하였다.
package com.example.my01_helloworld;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import androidx.appcompat.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity {
Button btnCall; // 전역 변수
EditText etPhoneNum; // 전역 변수 정의만 할 수 있다.
@Override
protected void onCreate(Bundle savedInstanceState) { // onCreate() : 메모리에 등록하면서 작동하는 메서드
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); // setContentView() : 매개 변수를 화면에 출력하는 메서드
// R. : resource(res)의 약자
etPhoneNum = findViewById(R.id.etPhoneNum);
btnCall = findViewById(R.id.btnCall); // 지역 변수
// btnCall이란 id를 가진 객체를 찾아서 btnCall 변수에 입력한다.
btnCall.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String phoneNum = "tel:" + etPhoneNum.getText().toString();
// Intent intent = new Intent(Intent.ACTION_DIAL, Uri.parse("tel:010-1234-5678"));
Intent intent = new Intent(Intent.ACTION_DIAL, Uri.parse(phoneNum));
startActivity(intent);
}
});
}
public void btn1Clicked(View view) {
Toast.makeText(this, "버튼1 클릭!", Toast.LENGTH_SHORT).show();
// context : 어디에 있는지 환경을 지정
// this : 현재 참조중인 MainActivity를 지정
// LENGTH_SHORT : 2 ~ 3초 정도 보여줌
// LENGTH_LONG : 5초 정도 보여줌
}
public void btn2Clicked(View view) {
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("https://m.naver.com"));
startActivity(intent);
// Intent : 무언가 새 창을 띄울때는 Intent를 사용한다.
}
}
반응형
'취업성공패키지 SW 개발자 교육 > Android' 카테고리의 다른 글
[Android] 6. Frame Layout : string, visibility, invisible, gone, scaleType, 디버깅 (0) | 2020.05.13 |
---|---|
[Android] 5. Linear Layout ② : 화면 분할하기, Relative Layout ① (0) | 2020.05.12 |
[Android] 4. 새 화면 띄우기, Linear Layout ① (0) | 2020.05.11 |
[Android] 2. textSize, gravity, 폰트 설정, 자동 import 설정, Hello World 작동 (0) | 2020.05.07 |
[Android] 1. 안드로이드 개발 환경 구축 ① (0) | 2020.05.06 |