본문 바로가기

프로그래밍

Android 기본 프로젝트 MainActivity.java 분석 package com.example.sample; import android.os.Bundle; import android.support.v4.app.Fragment; import android.support.v7.app.ActionBarActivity; import android.view.LayoutInflater; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.view.View.OnClickListener; import android.view.ViewGroup; import android.widget.TextView; import android.widget.Toast; pub.. 더보기
Android ADT 22.6.0 이상 이전의 BlankActivity 환경 만들기 안드로이드 기본 프로젝트를 생성 할줄 알고 있다는 가정하에 진행 하겠습니다. 초기 프로젝트 생성시 아래와 같은 환경으로 프로젝트를 생성할 것 입니다. 여기 까지 완성 됬다면, appcompat_v7 프로젝트와 Sample 프로젝트 총 2개가 생성 되었을 겁니다. ※ 프로젝트 마우스 오른쪽 눌러서 Properties 속성에서 appcompat_v7 라이브러리가 정상적으로 위와 같이 참조 되었는지 확인해주세요! (1) MainActivity.java 소스코드 를 아래와 같이 변경 package com.example.sample; import android.app.Activity; import android.os.Bundle; public class MainActivity extends Activity { @.. 더보기
Android ADT 22.6.0 이후의 변화 안드로이드 Developer 사이트에서 ADT와 이클립스를 묶어 배포했던 버전(20131030 기준) ADT 22.3 버전이 20140321 기준으로 ADT 22.6.2 버전으로 업데이트 되었습니다. 2014년 3월 한달간 총 3차례의 업데이트가 이루어졌습니다. 22.6.0 -> 22.6.1 -> 22.6.2 (현재) 가장 큰 변화 몇가지를 살펴 보고자 합니다. 1. JDK 7 언어 기능에 대한 지원 - JDK7 컴파일 환경을 지원 하고 JDK7 의 문법 지원 (multi-catch, try-with-resources, diamond operator 등) (19 이상 Bulid Tools 필요) 단, Try-with-resources 는 minSdkVersion 19 이상 에서만 지원 한다고 합니다. J.. 더보기
JOptionPane 클래스 JOptionPane 클래스란? - 메세지 혹은 알람창 이라고 할수 있습니다. JOptionPane 클래스를 이용한 메세지창 우선, JOptionPane 클래스에서 사용되어지는 얼럿창을 띄어주는 메서드들은, 기본적으로 클래스메소드 (static 메소드) 로 구성되어 있습니다. 따라서, 인스턴스 객체를 생성할 필요가 없습니다. 아래 예제는 간단히 대화명을 입력하라는 메세지창을 띄어주는 예제 입니다. import javax.swing.JOptionPane; public class Index { public static void main(String[] args) { String result = JOptionPane.showInputDialog("대화명 입력하세요"); System.out.println(res.. 더보기
JFileChooser 클래스 JFileChooser Class 란? - JFileChooser 클래스를 사용하는경우, 윈도우의 파일열기, 저장등 과같은 형태의 Dialog 를 사용할수 있습니다. (아래그림 참조) 파일저장 Dialog 이번 강좌에서는 스윙에서 JFileChooser 클래스를 이용하여 파일창을 띄어보도록 하겠습니다. import java.io.File; import javax.swing.JFileChooser; import javax.swing.JFrame; public class Index { public static void main(String[] args) { JFrame window = new JFrame(); //window.setVisible(true); JFileChooser fileChooser = n.. 더보기
Swing LookAndFeel Swing 에서, 윈도우에 따라 컴포넌트들이 각 고유의 모습으로 보이게 할수있는 방법이 없을까 해서, 찾아봤습니다. - 테스트 환경 : Window 8 자바의 Swing 은 어떤 운영체제이든지, AWT 를 사용하지 않는 이상 모든 컴포넌트들의 UI형태와 모양은 위와 같습니다. 이제 Swing 을 사용해도 해당 운영체제 고유의 컴포넌트의 모습으로? 변형 시키기 위해선 LookAndFeel 을 사용해야 합니다. UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); 위 코드를 JFrame 이 초기화 되기 이전 (Static 구문이나, Main 메소드 최상단, 생성자 최상단 부분) 등에 삽입해주세요. (반드시 예외처리 해주어야 합니다) 결과는.. 더보기
JAVA SQLLite3 사용하기 (3) ※ 앞서 미리 프로젝트에서 라이브러리가 추가되었고, DBMS 을 통해 데이터베이스가 생성되었다 가정하에 진행합니다. ※ 이미 MySQL, 오라클 같은 JDBC 프로그래밍이나, Arraylist, 제네릭 프로그래밍을 알고있다는 가정하에 진행하겠습니다. (모두 세세히 풀어쓰기엔 좀 무리가 있습니다.) 1. 우선, SQL 매니져로 생성했던, 데이터베이스를 프로젝트내 폴더를 하나 생성해서 복사합니다. (위 프로젝트에서는 resource 라는 폴더명으로 생성후 넣었습니다.) 이제 모든 준비는 끝났습니다. 이제 실제적으로 코드레벨에서 해당 데이터베이스에 접근해보도록 하겠습니다. 먼저, 저는 두개의 패키지를 나누어 관리하겠습니다. com.db 패키지 - Datainfo 라는 클래스는, 데이터베이스에 존재하는 필드인 .. 더보기
JAVA SQLLite3 사용하기 (2) 우선, 첫번째 강좌에서 자바 프로젝트에서 외부라이브러리 호출방법에 대해 익혀보았습니다. 이제, SQLite Manager 을 설치하여 데이터베이스 생성 에 대해 배워보겠습니다. 파이어폭스를 설치후, 부가앱(무료) 에서 SQLite Manager 를 설치하도록 합니다. 설치가 정상적으로 수행되었다면, 도구에 설치된것을 볼수 있습니다. 실행하도록 합니다. 위와 같은 화면의 어플리케이션이 실행됨을 볼수 있습니다. 딱히 어려운 부분은 없으나, 다른 부가적인것은 배재하고 필요한것만 설명하도록 하겠습니다. 이제 데이터베이스를 생성하도록 하겠습니다. 1. 먼저 Database 첫번째 메뉴에서 New Database 를 클릭하도록 하겠습니다. 2. 위와 같은 화면이 뜨게 되는데, 이 화면은 데이터베이스의 이름을 설정하.. 더보기
JAVA SQLLite3 사용하기 (1) SQLLite3 란? - MySQL, MSSQL 등 과같이 데이터베이스 입니다. 단, MySQL 이나 MSSQL 은 서버와 사용자에 대한 권한이 필요한 반면, SQLLite3 는 서버가 불피요하고, 사용자 권한도 필요하지 않는 데이터베이스 입니다. 주로, IOS 혹은 안드로이드 같은 모바일 환경에서 채택하고 쓰고 있습니다. (더 자세한 사항은 인터넷 검색 참고) ------------------------------------------------------------------------------------------------------------ 준비물 : SQLLite3 라이브러리, 파이어폭스 SQLLite3 Manager (부가앱) 이번에는, JAVA 에서 SQLLite3 를 사용하는 방법에 .. 더보기
INSERT SELECT INSERT SELECT 이란? - 이미 존재하는 테이블에 SELECT 한 결과를 삽입할수 있다. 즉, TABLE1 이라는 곳에 TABLE2에 존재하는 기본키의 MAX값을 넣고자 한다면? (먼저, TABLE1 에는 ID 라는 기본키에 대한 애트리뷰트 하나만 존재가정) INSERT INTO `TABLE1` SELECT MAX(id) FROM `TABLE2` 이렇게 된다면, TABLE2에 존재하는 id 라는 값의 최대값을 구해, TABLE1 테이블에 삽입 되게 된다. TABLE2 의 id MAX 값이 60인 경우, TABLE1 에 60 이라는 값이 삽입된됩니다. 더보기