일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- intent
- springSTS
- semantic_segmentation
- 크롤링
- 프로젝트
- KNN모델
- gitclone
- 안드로이드
- MVCmodel
- 내일배움카드
- 2차 실전프로젝트
- 오픈소스깃허브사용
- JSP/Servlet
- 백엔드
- randomForest
- 활성화함수
- MSE
- 선형모델 분류
- 2차프로젝트
- 손실함수
- 하이퍼파라미터튜닝
- 1차프로젝트
- 스마트인재개발원
- 국비지원
- 비스포크시네마
- 취업연계
- 머신러닝
- 교차검증
- 취업성공패키지
- ERD
- Today
- Total
또자의 코딩교실
[스마트인재개발원] Android - 개요 본문
Android OS는 비독점 개발 틀랫폼을 지향하는 개발도구이다. 모바일 환경에서 인터넷을 더 많이 보급시키기 위해 만들어졌으며, 현재 4.1 Jelly bean 부터 11.0 R까지 많은 발전이 이루어 지고 있다.
안드로이드 개발 UI 화면에서 어떤 부분을 클릭하는지에 따라 동작들은 달라지는데
그런 기능들을 구현할 때 작성해야 하는 파일들에 대해 알아보자.
✅ java : 소스코드 및 model // xml : 디자인 레이아웃 및 개체 지정
java파일과 xml파일이 한쌍으로 생성되고 둘중의 하나가 없어서는 안된다.
묶여서 하나로 생성이 되는것을 확인할 수 있음.
✅ 안드로이드 화면에 관한 구성 : view를 구성하는 것들
- resource의 역할 : 소리, 이미지, 폰트 등의 모든 자료들을 리소스라고 한다.
- drawable : 이미지 등을 관리함.
- layout : 보여지는 화면의 구성을 관리함. (activity_Main.xml : 디자인)
- mipmap : 아이콘을 관리함. 해상도 별로 정리가 되어있음.
- values : 화면디자인을 할때, colors에서 색을 지정해놓고 파일들을 통해서 색을 불러와서 쓰는것을 권장하고 있음.
- themes.xml : title bar가 필요에 따라서 화면을 넓게 쓰기 위해서. bar를 없애거나 속성을 관리할 수 있음.
✅ Manifest 파일이란?
- 화면을 실행할 때 쓰겠다는 정보들을 설정하고 권한의 설정정보등을 지정한다.
- 설치할 때의 아이콘, 앱의 이름, 실행될 Activity(설치하고 실행시키면 보여지는 화면)등을 수정할 수 있다.
✅ 위젯(Widjet)(=View):눈에 보여지는 것
- View Group : 뷰를 담을 수 있는 그릇(=레이아웃)
- 안드로이드에서 디폴트로 레이아웃을 제공하는 것 : 위젯을 배치하는 용도로 사용할 수 있다.
- 안드로이드에서 디폴트로 레이아웃을 제공하는 것 : 위젯을 배치하는 용도로 사용할 수 있다.
✅ 어떻게 자바코드와 xml파일은 서로 내용이 연동될까?
☑ XML파일의 객체를 Java 파일 내에서 변경하기 때문에.
Java 코드에서 변경하고 싶은 요소만 아이디값을 넣어주자.
Java파일 내 변수에 초기화 시켜주면(findViewbyId(R.id._____) 내용변경과 글자색, 배경색을 변경할 수 있다.
text에 사용하고자하는 view 타입에 대한 객체를 선언해서 아이디를 찾아와서
findViewById를 통해 데이터를 초기화시키는 작업을 진행하면 view를 얼마든지 변경할 수 있다.
이를 통해 화면에 배치된 TextView에 대한 정보를 tvMsg변수에 초기화 시킬 수 있다.
Onclick시 텍스트를 변경하는 메소드 설계
view라는 타입의 view 매개변수를 설정하여 클릭이라는 이벤트가 발생했을경우 해당하는 View에 대한 정보를 넘겨주고 반환함. 이때 넘어오는 데이터를 받아줄 수 있는 매개변수가 없다면 오류가 남.
안드로이드는 모든 이용하고자 하는 view는 모두 public static final의 형태로 객체가 생성되어있음
R의 의미 : class. R이라는 클래스 안에 모든 안드로이드에서 입력하는 view나 레이아웃들을 정의함
다음은 기본적인 안드로이드 개발 java 코드이다.
public class MainActivity extends AppCompatActivity {
TextView tvMsg; //객체 선언
/*액티비티(화면)을 생성하는 메소드*/
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//레이아웃 폴더에 만들어진 값들이 상수로 생성되어있음
tvMsg = findViewById(R.id.tvMsg); //객체 선언
}
//
public void btnChange (View v){
tvMsg.setText("버튼으로 내용 바꾸기 성공!🎉");
}
public void btnbc (View v){
tvMsg.setText("글자색과 배경색 바꾸기 성공!✨");
tvMsg.setBackgroundColor(Color.parseColor("#ff867f"));
tvMsg.setTextColor(Color.parseColor("#FF6200EE"));
}
//화면 배경색 변경해보기!
//대상 : ConstraintLayout
public void btnbg (View v){
//ConstraintLayout 객체 생성
ConstraintLayout cLayout =findViewById(R.id.bg);
//배경색 변경 메소드 호출
cLayout.setBackgroundColor(Color.parseColor("#FFBB86FC"));
}
//EditText(PlainText) 객체 생성
public void edtMsg2 (View v){
//사용자가 입력한 텍스트를 변수에 저장
EditText edtMsg = findViewById(R.id.edtMsg);
String msg = edtMsg.getText().toString(); //text를 고칠때 문자를 가져와 문자열 데이터로 바꾸는 과정 //중요
//TextView에 값 출력
tvMsg.setText(msg);
}
'코딩공부 > Android' 카테고리의 다른 글
[스마트인재개발원] 이미지 슬라이드 앱 만들기 (0) | 2022.01.03 |
---|---|
[스마트인재개발원] 주사위 게임 예제 만들기 (0) | 2022.01.03 |
[스마트인재개발원] Constraint Layout에서 Chain 사용하기 (0) | 2022.01.03 |
[스마트인재개발원]Android - intent (0) | 2021.12.27 |
[스마트인재개발원] (Intent)Lotto_Simulator 실습(개선과정 포함) (0) | 2021.12.03 |