본문 바로가기

컴퓨터 공학/Android35

[Do it 개정6판_안드로이드 스튜디오]둘째마당_05 프래그먼트 이해하기 - 화면 안에 들어가는 레이아웃이 중복되지 않도록 한 번만 정의하고 재사용할 수 있도록 만든 것이 프래그먼트 05-1 프래그먼트란? ■ 프래그먼트에 대해 이해하기 - 하나의 액티비티 안에 다른 액티비티를 넣는다는 것은 단말의 리소스를 많이 사용하는 비효율적인 방법 - 프래그먼트는 하나의 화면 안에 들어가는 부분 화면과 같아서 하나의 레이아웃처럼 보인다. - 프래그먼트의 사용 목적 1. 분할된 화면들을 독립적으로 구성하기 위해 사용함 2. 분할된 화면들의 상태를 관리하기 위해 사용함 액티비티 시스템에서 관리하는 화면 프래그먼트 단순히 액티비티 위에 올라가는 화면의 일부 즉 '부분 화면' - 프래그먼트는 항상 액티비티 위에 올라가 있어야 한다. - 따라서 프래그먼트가 제대로 동작하는 시점은 프래그먼트가 메모.. 2019. 12. 1.

[Do it 개정6판_안드로이드 스튜디오]둘째마당_04 여러 화면 간 전환하기 04-1 레이아웃 인플레이션 이해하기 - 이제까지 하나의 화면에 대하여 화면을 어떻게 보여줄지 결정하는 XML 레이아웃을 정의했다. - 구조를 나타내는 XML과 화면의 기능을 담당하는 java 파일을 연결해줘야 한다. - 화면의 기능을 담당하는 소스 파일에는 AppCompatActivity를 상속하는 MainActivitiy 클래스가 자동으로 만들어진다. - 여기서 R은 프로젝트 창에 보이는 res 폴더를 의미한다. - 앱이 실행될 때 XML 레이아웃의 내용이 메모리에 객체화되고 객체화된 XML 레이아웃을 소스 파일엥서 사용 - 이렇게 XML 레이아웃의 내용이 메모리에 객체화되는 과정을 인플레이션이라고 한다. - 메모리에 객체화되지 않은 버튼 객체를 참조하려고 했기 때문에 심각한 오류로 앱 자체를 멈추게.. 2019. 11. 29.

[Do it 개정6판_안드로이드 스튜디오]둘째마당_03 기본 위젯과 드로어블 사용하기 03-1 기본 위젯 다시 한 번 자세히 공부하기 ■ 텍스트뷰 자세히 살펴보기 - 화면에 글자를 보여주는 역할 - strings.xml 파일에 작성한 문자열을 지정할 수 있음, 이 파일에 정의된 문자열은 text 속성에서 @string/... 와 같은 형식응로 참조해야 합니다. - XML 레이아웃 파일과 문자열 파일을 구분하는 것이 좋음 - 안드로이드에서 다국어를 지원하려면? 더보기 app/res 폴더 안에 두 개의 폴더를 만든 후 그 안에서 stings.xml 파일을 넣어둔다. 영어는 values-en, values-ko - textColor 속성 : 텍스트뷰에서 표시하는 문자열의 색상, '#AARRGGBB' 포맷 사용 - textSize 속성 : 단말 해상도에 따라 글자의 크기를 일정한 크기로 보일 수.. 2019. 11. 28.

[Do it 개정6판_안드로이드 스튜디오]둘째마당_02 레이아웃 익히기 02-1 안드로이드에 포함된 대표적인 레이아웃 살려보기 ConstraintLayot LinearLayout RelativeLayout FrameLayout TableLayout - 뷰에 색 넣기 #ff0000 //빨간색 #00ff00 //녹색 #0000ff // 파랑 투명도를 넣고 싶다면 맨앞에 00 추가 - 배경으로 이미지를 지정할 수 있음 /app/src/main/res/drawable 이 폴더에 이미지 파일 넣기 02-2 리니어 레이아웃 사용하기 ■ 리니어 레이아웃의 방향 설정하기 방향 설정할 때는 orientation 속성을 사용하여 가로 방향은 horizontal, 세로 방향은 vertical이라는 값으로 설정 ■ 자바 코드에서 화면 구성하기 - xml 파일은 화면을 위해 만든 자바 소스 파일과.. 2019. 11. 27.

[Do it 개정6판_안드로이드 스튜디오]둘째마당_01 안드로이드 스튜디오 설치 안드로이드에서는 하나의 화면을 Activity로 Activity 안에 들어가는 각각의 구성 요소는 View를 만들어서 추가 Activity 안의 View들을 배치하는 것을 Layout 이라고 한다. 01-1 안드로이드 스튜디오 제대로 익히기 안드로이드 스튜디오는 인텔리제이라는 개발 도구를 확장시켜 만든 것 자동으로 앱 제작에 필요한 파일들을 만들어 주는데 앱의 첫 화면은 기본으로 제공 패키지 이름 : 앱을 구분하는 고유한 값 즉 전 세계에서 만들어지는 앱과 중복되지 않는 유일한 이름 shortcut : ctrl + tab = xml file java file 클래스에 커서를 대고 ctrl + Q 클래스에 대한 API를 볼 수 있음 메서드 소괄호 안에 들어갈 수 있는 파라미터(매개변수)가 어떤 것들이 있는.. 2019. 11. 27.

[Do it 개정6판_안드로이드 스튜디오] 첫째마당 이 장에서는 자바 소스 코드를 이해하는 것보다 안드로이드 스튜디오를 사용하여 앱을 개발하는 과정을 이해하는 것이 더 중요하다. public class HomeActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_home); } public void onButtonOnClinked(View v) { Toast.makeText(this, "버튼이 눌렸습니다. ", Toast.LENGTH_SHORT).show(); } public void onButtonOnClin.. 2019. 11. 27.

[안드로이드 스튜디오] ListView(리스트뷰) 만들기 리스트뷰를 만들거니까 간단한 레이아웃 작업부터 들어가보자. Linear 기본 셋팅이 Horizental로 나온다. 변경하려면 activity_main.xml에서 layout 태그 안에 orientation:vertical로 지정 MainActivity.java package com.ogrg.listexample; import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.widget.ArrayAdapter; import android.widget.ListView; import java.lang.reflect.Array; import java.util.ArrayList; import java.util.Li.. 2019. 11. 24.

[안드로이드 스튜디오] 패키지 구조, 용어 정리 왼쪽 바에서 Android - app - manifests AndroidManifest.xml에서 - 아이콘 같은 소스 자료로 이동하려면 Ctrl 누르고 마우스를 갖다대면 링크로 넘어갈 수 있음 - Activitiy 선언을 담당하고 있음 Res - Drawable 외부 이미지를 가져와서 넣는 곳 Res - mipmap dpi 안드로이드에서 사용하는 해상도 단위 Res - values 주요 컬러들 지정해놓기 Res - strings 주요 단어들 지정해놓기 2019. 11. 23.

[안드로이드 스튜디오] intent 사용해서 화면 전환하기 MainActivity.java package com.ogrg.myapplication2; import androidx.appcompat.app.AppCompatActivity; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.EditText; public class MainActivity extends AppCompatActivity { private Button btn_move; private EditText et_test; private String str; @Override protected void onC.. 2019. 11. 23.

[안드로이드 스튜디오] 라디오 버튼 사용하기 package com.ogrg.myapplication; import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.RadioButton; import android.widget.RadioGroup; import android.widget.Toast; public class MainActivity extends AppCompatActivity { private RadioGroup rg_gender; private RadioButton rb_man, rb_woman; private Button .. 2019. 11. 23.