목록Android (30)
mojo's Blog
양방향 액티비티 메인 액티비티에서 세컨트 액티비티로 데이터를 넘긴 후에 다시 세컨드 액티비티에서 메인 액티비티로 데이터를 돌려주는 경우가 있다. 매인 액티비티에서 putExtra()로 인텐트에 데이터를 넣는 것은 동일하지만, 세컨트 액티비티에서 데이터를 돌려받으려면 액티비티를 호출할 때 startActivityForResult() 메소드를 사용해야 한다. 그리고 세컨트 액티비티에서 finish() 로 끝내기 전에 메인 액티비티에 돌려줄 인텐트를 생성하여 putExtra()로 데이터를 넣은 다음 setResult()로 돌려준다. 또한 메인 액티비티에서는 onActivityResult() 메소드를 오버라이딩하고 오버라이딩된 메소드 안에서 getExtra() 메소드로 돌려받은 데이터를 사용한다. 무슨 소리인지..
안드로이드의 4대 컴포넌트 안드로이드의 4대 컴포넌트는 액티비티, 서비스, 브로드캐스트 리시버, 콘텐트 프로바이더이다. 1. 액티비티 => 화면을 구성하는 가장 기본적인 컴포넌트로 지금까지 계속 액티비티를 이용하여 앱을 작성했다. 2. 서비스 => 눈에 보이는 화면과 상관없이 백그라운드에서 동작하는 컴포넌트이다. 백신 프로그램처럼 눈에 보이지는 않지만 계속 동작하고 있다. 로컬에서 동작하는 서비스는 세 단계를 거친다. ( 서비스 생성 => 서비스 시작 => 서비스 종료 ) 3. 브로드캐스트 리시버 => 안드로이드는 여러 응용 프로그램이나 장치에 메시지를 전달하기 위해 방송 메시지를 사용한다.안드로이드는 문자 메시지 도착, 배터리 방전, SD 카드 탈부착, 네트워크 환경 변화 등이 발생하면 전체 응용 프로..
5번 ) 확대, 축소, 회전, 밝게, 어둡게, 그레이 효과를 내도록 하는 프로그램 구현하기 Java Code public class MainActivity extends AppCompatActivity { Button btn1, btn2, btn3, btn4, btn5, btn6; static float scaleX=1, scaleY=1, angle=0, color=1, sat=1; MyGraphicView graphicView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); graphicView = new MyGraphicView(this); setContentView(gr..
사진과 같은 그림 파일을 안드로이드 화면에 출력할 수도 있다. 사진에 다양한 효과를 주는 방법도 지원하는데, 이를 잘 활용하면 포토샵과 비슷한 디지털 영상 처리 앱도 개발할 수 있다. 화면 중앙에 이미지 파일을 출력하는 코드를 작성해보도록 한다. Java Code public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(new MyGraphicView(this)); setTitle("연습하기"); } private static class MyGraphicView e..
안드로이드는 화면에 선, 원, 사각형 드으이 도형을 그리는 방식을 제공한다. 관련 메소드에서 좌표를 직접 입력해서 그릴 수도 있고, 화면을 손가락으로 터치해서 그릴 수도 있다. 그리고 그래픽을 처리하는 방식을 잘 활용하면 그림판 같은 유용한 앱을 만들 수 있다. 그래픽 처리의 기본 그래픽을 출력할 때는 주로 View.onDraw() 메소드를 오버라이딩해서 사용한다. 그래픽 처리를 위한 기본적인 방식을 알아보도록 한다. Java Code public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);..
6번 ) 일기장을 내장 메모리가 아닌 SD 카드의 myDiary 폴더에 저장되도록 구현하기 XML Code Java Code public class MainActivity extends AppCompatActivity { DatePicker dp; EditText edit; Button btn; String fileName; File[] fileNames; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); setTitle("연습하기"); ActivityCompat.requestPermissions(this, ..