'안드로이드'에 해당되는 글 32건

  1. 2011.12.07 이클립스 단축키 (모든 단축키 모음)
  2. 2011.12.06 자바 API (1)
  3. 2011.12.02 안드로이드 클래스(Android Classes)
  4. 2011.11.14 에러 : Your project contains error(s), please fix them before running your application.
  5. 2011.11.14 에러 : No grammar constraints (DTD or XML schema) detected for the document.
  6. 2011.11.14 안드로이드 앱 개발 - 스토리보드
  7. 2011.10.28 에러 : android.R.id.?? cannot be resolved (1)
  8. 2011.10.28 에러 : Error in an XML file: aborting build. (1)
  9. 2011.10.26 Text Align
  10. 2011.10.26 EditText 숫자키만 허용하기
  11. 2011.10.26 키보드 숫자형으로 시작하기
  12. 2011.10.24 자바 프로그램 이해 - 5
  13. 2011.10.24 자바 프로그램 이해 - 4
  14. 2011.10.24 자바 프로그램 이해 - 3
  15. 2011.10.22 이클립스에서 코드 어시스트 기능 멈춤 현상
  16. 2011.10.22 에뮬레이터에 설치한 앱 삭제하는 방법
  17. 2011.10.22 안드로이드 에러와 처리
  18. 2011.10.18 한맺힌 영어 제작 과정 및 후기 - 2
  19. 2011.10.18 한맺힌 영어 제작 과정 및 후기 - 1
  20. 2011.10.15 개발과 등록에 필요한 몇몇 사이트
  21. 2011.10.13 자바 프로그램 이해 - 2
  22. 2011.10.13 바이브레이터
  23. 2011.10.13 이전 액티비티(Activity)로 돌아가기
  24. 2011.10.12 자바 프로그램 이해 - 1
  25. 2011.10.12 안드로이드 아이콘 만들기 (1)
  26. 2011.10.12 이클립스 사용하기
  27. 2011.10.12 인스톨 위치 설정하기
  28. 2011.10.12 토스트(toast)
  29. 2011.10.12 앱 이름 한글로 만들기
  30. 2011.10.12 화면방향 가로 세로 고정하기
이클립스 단축키를 모두 모았습니다. 이클립스는 자바 어플개발이나 안드로이드 앱 개발시 많이 사용되는 것 아시죠? 물론, 이클립스를 실행시킨 후에 Ctrl + Shift + L 누르면 나옵니다.

 


저작자 표시 비영리 변경 금지
신고

'안드로이드 > 안드로이드 강좌' 카테고리의 다른 글

웹앱 만들기 1  (0) 2014.01.10
안드로이드 개발 시작하기  (0) 2013.12.18
이클립스 단축키 (모든 단축키 모음)  (0) 2011.12.07
안드로이드 앱 개발 - 스토리보드  (0) 2011.11.14
Text Align  (0) 2011.10.26
이클립스 사용하기  (0) 2011.10.12
Posted by 천왕지짐

자바 API

자바(JAVA) 2011.12.06 17:10
위키백과에 다음과 같이 정의하고 있네요.

자바 API는 자바를 사용하여 쉽게 구현할 수 있도록 한 클래스 라이브러리의 집합이다. 즉, 자바라는 언어를 사용하여 사용자의 부담을 최소화하는 반면에 입출력, 화면 구성, 이미지, 네트워크와 같이 복잡하지만 필요한 클래스들을 미리 구현하여 사용자가 쉽게 구현하도록 하는 API이다. 이러한 자바 API는 하나의 커다란 클래스 계층구조로 설계되어 있다.

아래 사이트를 들어가서 최신 API Document를 확인해 보세요.
http://docs.oracle.com/javase/7/docs/api/index.html


왼쪽 상단은 패키지 이름, 그 아래쪽에 인터페이스와 클래스이름, Exception들, 오른쪽에는 클래스의 설명, 생성자, 메소드, 변수에 대한 것이 나옵니다.
저작자 표시 비영리 변경 금지
신고

'자바(JAVA)' 카테고리의 다른 글

자바 API  (1) 2011.12.06
자바 실행파일(exe) 만들기  (5) 2011.10.24
자바 프로그램 이해 - 5  (0) 2011.10.24
자바 프로그램 이해 - 4  (0) 2011.10.24
자바 프로그램 이해 - 3  (0) 2011.10.24
자바 프로그램 이해 - 2  (0) 2011.10.13
Posted by 천왕지짐
구글링하니까 나오네요. 도움이 될 것 같아 첨부합니다. 저작권에 문제되면 삭제하겠습니다.


저작자 표시 비영리 변경 금지
신고
Posted by 천왕지짐

말 그대로 프로젝트에 오류가 있는 경우입니다. 애플리케이션을 실행하기 전에 그것들을 고치라는 뜻입니다. 이 오류 메시지가 나타나면 하단 탭바에서 Problems 선택후 + Errors (* items) 라는 표시를 찾아 + 를 눌러 펼친 다음 각 오류를 찾아서 해결 하면 됩니다.

저작자 표시 비영리 변경 금지
신고
Posted by 천왕지짐

이 경우는 붙여 넣기를 하면서 UTF-8 형태가 아닌 이상한 문자(Tab, Enter)들이 포함된 경우에 발생합니다. 메모장이나 Editplus에서 UTF-8형태로 저장하여 붙여넣기 하면 에러 메시지를 해결할 수 있습니다.

저작자 표시 비영리 변경 금지
신고
Posted by 천왕지짐
안드로이드 앱 개발시 필요한 스토리보드를 첨부합니다. 간략한 밑그림을 그릴 때 사용해 보세요.





저작자 표시 비영리 변경 금지
신고
Posted by 천왕지짐

.java 파일은 xml에서 id를 참조합니다. xml 에 쓰인 아이템의 id와 .java에서 참조한 id값이 다른 경우 생기는 에러입니다. 간단하죠?



저작자 표시 비영리 변경 금지
신고
Posted by 천왕지짐

안드로이드 앱 개발 도중 수많은 에러를 만나게 됩니다. 이클립스 자체가 아직도 불안하기 때문에 에러가 아닌데도 에러가 발생되는 황당한 일을 겪기도 합니다. 발생되는 에러들을 수시로 올려보도록 하겠습니다.

Error in an XML file: aborting build.

이 오류 메시지는 strings.xml 파일을 탐색하거나 수정한 후에 바로 프로젝트 실행하여 발생하는 문법적 오류 메시지이다.

프로젝트는 .xml이 아닌 .java에서 실행해야 한다.

혹시 strings.out.xml 파일이 생성 되었다면 해당 파일을 삭제 후 다시 실행해 본다.

메뉴 >Project >Clean >Clean projects selected below 선택 후 OK

만약 Problems 창에 문제가 발견 되었다면 해당 문제를 처리 후 실행 시킨다.

다른 이유로 XML의 코드 오류가 있을 수 있으므로 xml 소스 코드를 확인해 본다. 가끔 소스코드가 이상이 없는데도 발생된다면 정상적으로 동작하는 xml 소스 코드를 복사하여 사용하는 것도 하나의 방법이다.



저작자 표시 비영리 변경 금지
신고
Posted by 천왕지짐
TextView로는 Align(정렬)중에서 특히 양쪽 정렬은 전혀 방법이 없는 것 같습니다. 여러날 동안 구글링하고 각종 블로그에 질문해 보았는데 답을 찾을 수 없었습니다. 그래서 WebView를 이용한 방법을 사용하여 정렬하는 방법을 사용했는데 의외로 적당합니다.

■ TestAndroid.java
package com.csdroid.webview;
import android.app.Activity;
import android.os.Bundle;
import android.webkit.WebView;

public class TestWebView extends Activity {
   WebView mWebView;
   @Override
   public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.main);
      mWebView = (WebView) findViewById(R.id.webview);
      String text = "<html><body>"
              + "<p align=\"justify\">"
              + getString(R.string.test)  // 이부분에 HTML형태의 내용 기입해도 됨.
              + "</p> "
              + "</body></html>";
      mWebView.loadData(text, "text/html", "utf-8");
   } 
}

■ main.xml
<?xml version="1.0" encoding="utf-8"?>  
<RelativeLayout
   xmlns:android="http://schemas.android.com/apk/res/android"
   android:layout_width="fill_parent"
   android:layout_height="fill_parent">
   <WebView
       android:id="@+id/webview"
       android:layout_width="fill_parent"
       android:layout_height="fill_parent" />
</RelativeLayout>



저작자 표시 비영리 변경 금지
신고
Posted by 천왕지짐

1) 소스 코드 상에서 처리

DigitsKeyListener digit = new DigitsKeyListener(true, true);

// first true : is signed, second one : is decimal digit.setKeyListener( MyDigitKeyListener ); 


2) xml에서 처리

android:inputType="number"

저작자 표시 비영리 변경 금지
신고
Posted by 천왕지짐
필요한 경우 키보드가 숫자형으로 보여줄 필요가 있습니다. 간단하니 테스트해보시기 바랍니다.

edittext.setInputType(InputType.TYPE_CLASS_NUMBER);



저작자 표시 비영리 변경 금지
신고
Posted by 천왕지짐
제어문에 대해 알아보도록 하겠습니다. 여러 가지 중에서 가장 많이 사용하는 if와 switch 문에 대해서만 예제를 살펴보도록 하겠습니다. 이 두 문은 반드시 꼭 알고 있어야 합니다.
 
■ SwitchDemoMain.java
package firstpackage;
public class SwitchDemoMain {
   public static void main(String[] args) {
      int age = 10;
      String msg = "";
      if(age == 10)
    msg = "10대군요";
      else if(age == 20)
    msg = "20대군요";
      else if(age == 30)
    msg = "30대군요";
      else
    msg = "많군요.";
      System.out.println(msg);
      age += 10;
      switch(age){
    case 10:
       msg = "10대군요";
       break;
    case 20:
       msg = "20대군요";
       break;           
    case 30:
       msg = "30대군요";
       break;           
    default :
       msg = "많군요";
       break;
    }
      System.out.println(msg);
   }
}

결과

10대군요.
20대군요.



저작자 표시 비영리 변경 금지
신고

'자바(JAVA)' 카테고리의 다른 글

자바 API  (1) 2011.12.06
자바 실행파일(exe) 만들기  (5) 2011.10.24
자바 프로그램 이해 - 5  (0) 2011.10.24
자바 프로그램 이해 - 4  (0) 2011.10.24
자바 프로그램 이해 - 3  (0) 2011.10.24
자바 프로그램 이해 - 2  (0) 2011.10.13
Posted by 천왕지짐
쓰레드는 프로세스 여러 개가 동시에 같이 동작하게 하는 방법입니다. 인터넷 온라인 게임을 생각해 보면 쉽습니다. 각 쓰레드가 준비 또는 동작하고 있다가 어떤 이벤트에 의해 동작하도록 하는 것입니다. 채팅 프로그램 같은 경우에는 멀티쓰레드를 사용합니다.
참고로 파일 I/O나 데이터베이스를 제어할 때는 반드시 try~catch문을 사용해야 합니다. 아래 예제는 멀티 쓰레드를 사용하는 예제입니다. 일반적으로 main()이 포함된 클래스는 맨 마지막에 작성하는 것이 편리합니다.

■ MultiThreadMain.java
package firstpackage;
public class MultiThreadMain { 
   public static void main(String[] args) {
      Thread thread1 = new DigitThread(); 
      //DigitThread가 Thread를 상속 받았기 때문에 가능
      Thread thread2 = new StringThread();
      thread1.start();
      thread2.start();
      System.out.println("끝~~~~~~");
   }



■ DigitThread.java
package firstpackage;
public class DigitThread extends Thread {
// Thread를 상속받는다.
// 멀티 상속은 안되며 멀티상속은 인터페이스를 사용하면 된다.
   public void run(){
      for(int i=1; i<101; i++){
      System.out.println(i);
      try {
    Thread.sleep(500);
    } catch (InterruptedException e) {
         // TODO Auto-generated catch block
         e.printStackTrace();
    }
      }
   }
}

메소드 run()은 처음에 다른 이름으로 주고 테스트를 진행한 후에 이상이 없을 때 바꾼다.


■ StringThread.java
package firstpackage;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
public class StringThread extends Thread{   
   public void run(){       
      try {
    FileReader reader = new FileReader("c:/test.txt");
        //파일 입출력,DB 읽을 때 try문 반드시 포함해야 함
    while(true){
       int data = 0;
       try {
          data=reader.read();
       } catch (IOException e){
          e.printStackTrace();
       }
       char ch=(char)data;
       if(data == -1) // 데이터가 없으면의 뜻.
           break;
               System.out.println(ch);
       try {
           Thread.sleep(500);
       } catch (InterruptedException e) {
       // TODO Auto-generated catch block
          e.printStackTrace();
       }
    }
      } catch (FileNotFoundException e) {
    // TODO Auto-generated catch block
    //e.printStackTrace();
    System.out.println(e);
      }   
   }
}

C드라이브의 루트에 메모장으로 test.txt 파일을 생성한 후 몇 줄의 내용을 입력해 놓아야 한다.



저작자 표시 비영리 변경 금지
신고

'자바(JAVA)' 카테고리의 다른 글

자바 실행파일(exe) 만들기  (5) 2011.10.24
자바 프로그램 이해 - 5  (0) 2011.10.24
자바 프로그램 이해 - 4  (0) 2011.10.24
자바 프로그램 이해 - 3  (0) 2011.10.24
자바 프로그램 이해 - 2  (0) 2011.10.13
자바 프로그램 이해 - 1  (0) 2011.10.12
Posted by 천왕지짐
이제는 메소드에 protected와 변수에 private를 붙여 접근 제한자를 사용하는 방법을 익혀보도록 하겠습니다.

■ HelloJava.java
package firstpackage;
public class HelloJava {
    public static void main(String[] args) {   
        HelloCalled obj = new HelloCalled();
        int aaa = obj.returnMeth();
        System.out.println("Total = "+aaa);
        int num1 = 33;
        int num2 = 67;
        System.out.println(obj.moveMeth(num1, num2));
    }
}


■ HelloJava1.java
package secondpackage;
import firstpackage.HelloCalled;
public class HelloJava1 {
    public static void main(String[] args) {
        HelloCalled obj = new HelloCalled();
    // obj.moveMeth(300,500); protected이면 이렇게 사용 불가        System.out.println(obj.moveMeth(400, 500));
    }
}


■ HelloCalled.java
package firstpackage;
public class HelloCalled {
    private int num;
    private String str;
    public void helloCalled(){
        this.num = 10;       
        this.str = "안드로이드"; 
    }
    public int returnMeth(){
        int sum = 0;
        for(int i = 1; i <= 10; i++){
    sum += i;
        }
        return sum;
    }
//같은 패키지 안이므로 상관 없다.
//protected int moveMeth(int num1, int num2){
    public int moveMeth(int num1, int num2){
        int sum = 0;
        sum = num1 + num2;
        return sum;
    }
}

혹시 이해가 되시는지요? ㅎㅎ




저작자 표시 비영리 변경 금지
신고

'자바(JAVA)' 카테고리의 다른 글

자바 실행파일(exe) 만들기  (5) 2011.10.24
자바 프로그램 이해 - 5  (0) 2011.10.24
자바 프로그램 이해 - 4  (0) 2011.10.24
자바 프로그램 이해 - 3  (0) 2011.10.24
자바 프로그램 이해 - 2  (0) 2011.10.13
자바 프로그램 이해 - 1  (0) 2011.10.12
Posted by 천왕지짐
이클립스를 사용하면서 시스템의 성능에 따라 코드 어시스트 기능을 사용하면서 잠시 멈추는 답답한 경우가 발생할 수 있는데 이때 자동 엑티베이션 기능을 해제하는 방법으로 해결할 수 있습니다. 물론 이 기능을 해제해도 Ctrl+Spacebar를 누르면 어시스트 기능은 사용됩니다.

window - preferences 에서 java - editor - Content Assist 에서 Enable Auto Activation의 체크 해제
 
하지만 이것은 근본적으로 해결하지는 못합니다. 버전이 올라가면 혹시 해결되어 있지 않을까 생각합니다.


저작자 표시 비영리 변경 금지
신고
Posted by 천왕지짐
이클립스를 사용하면서 테스트한 앱들은 모두 에뮬레이터에 설치되어 있는데 의외로 설치했던 앱들을 삭제하는 방법에 대해 궁굼해 하는 것 같습니다. 사실 보통 스마트폰을 사용하면서 설정 - 응용프로그램 - 응용프로그램관리에서 삭제하는 것 같은 방법이 똑같습니다.

굳이 명령 프롬프트상에서 삭제하고 싶다면 다음과 같이 하면 됩니다.

1) android 에뮬레이터 실행

2) 시작 - cmd 창을 열어 android sdk가 설치된 폴더안의 tools 폴더로 이동
3) >adb shell을 입력하며 에뮬레이터가 실행되지 않은 경우 error 가 발생
4) >cd data\app로 이동
5) >ls를 통해 삭제할 어플리케이션 확인
6) >rm '삭제할 app'을 입력하여 삭제


저작자 표시 비영리 변경 금지
신고
Posted by 천왕지짐

안드로이드 개발시 다양한 형태의 에러가 발생합니다. 많은 에러들을 경험해 보고 에러를 어떻게 처리해야 할지 기술해 놓았습니다.

ERROR 1) main.xml에서 아래와 같은 메시지가 나올 때
   “No grammar constraints (DTD or XML schema) detected for the document.”
=> 붙여 넣기를 하면서 UTF-8 형태가 아닌 이상한 문자(Tab, 큰따옴표 등)들이 포함된 경우발생될 수 있므로 메모장으로 옮겼다가 붙여 넣기를 하거나 UTF-8형태로 저장하여 사용하면 됨

ERROR 2)  R.java: No such file or directory의 해결방법
Android Project 를 생성해도 R.java: No such file or directory 에러 때문에 Android 실행이 되지 않는 경우가 있다. 생성한 Project 를 마우스 우측 클릭하면 제일 하단에 Properties 있는데 Google APIs 를 가장 위로 옮겨주고 OK 버튼을 클릭한다.













저작자 표시 비영리 변경 금지
신고
Posted by 천왕지짐
왜 한맺힌 영어 앱을 제작하게 되었는지 배경 설명입니다.

배경 설명

 - 영어 말하기에 대한 관심 및 수요자(초, 중, 고, 대, 일반인)가 의외로 많음.

 - 유치원에서 일반인에 이르기까지 영어를 배우는데 많은 비용과 시간을 소비하고 있음.

 - 개인적으로도 영어를 잘 하고 싶은 욕심 있음.

 - 오래 배웠지만 간단한 문장도 만들거나 말하지 못하는 실정 한탄.
    나는 학생이다. : I am a student.(O)
    나는 학교에 간다. : I am ~? (X)
    너는 행복하니? : Are you happy?(O)
    너는 학교에 가니? (그는 학교에 갔니?) : Are you ~? (X)

 - 아래와 같은 평범한 일생 대화를 자유롭게 하고 싶어 방법을 찾아봄.
    너는 왜 카페에 갔니? (언제 카페에 갔었니?)
    너 내일 서울 갈꺼니?
    너 내일 서울 갈 수 있어?

 - 먼저, 간단한 원리를 통해 문장하나를 스스로 만들 수 있는 방법 익히고,

 - 한글에 대해 영어로 말할 수 있도록 쉬운 영어 문장을 단어를 바꿔가면서 학습하면,

 - 한글 문장을 즉각 영어로 말할 수 있을 것이라는 확신 갖음.

 - 그래서, 일단 혼자 사용할 목적으로 제작

 - 후에 주변에서 완성시켜 배포해달라는 부탁으로 일단 무료 앱으로 Tstore와 Android 마켓에 등록

 - Tstore 11만여명 조회, 3만여명 다운로드, Android 마켓 1~5만여명 다운로드

 - 추가 자료 포함하여 상용으로 등록

 - 계속 사용할 수 있도록 지속적으로 업데이트 예정


저작자 표시 비영리 변경 금지
신고
Posted by 천왕지짐

초보 개발자들에게 시행착오를 줄이기 위해 한맺힌 영어 앱의 제작 그 과정을 소개하고자 합니다. 어떤 과정을 겪어 탄생(?)하게 되었는지 에러들은 무엇인지 가급적 상세히 소개하고자 하며 가급적 많은 도움이 되도록 설명하겠습니다.

일단 Tstore에 올린 내용부터 소개합니다.



본 앱은 그동안 수차례 영어를 시작했다 포기한 사람들을 위한 영어 학습서 입니다.

대부분 쉬운 원리를 모르고 열심히 노력하고 암기하다 한계를 느끼고 중단하는 것 같습니다.

사실 영어 말하기를 짧은 시간에 쉽게 할 수 있는 비법은 없습니다. 다만 간단한 원리를 이용하여 다른 학습 방법에 비해 쉽게 익힐 수 있도록 하려고 합니다.

본 학습 방법에 따라 며칠 정도의 학습 과정을 끝마치면 '나도 영어로 말할 수 있구나'하는 자신감을 갖게 될 것입니다.

본 앱은

1) 원리 학습 - 몇 가지 원리만으로 스스로 간단한 문장을 만들 수 있도록 합니다.
2) 동사 학습 - 현재,과거, 3인칭단수, 진행의 변화와 해당 동사의 예문을 학습할 수 있습니다.
3) 문장 학습 - 한글과 영어 문장을 비교하면서 학습할 수 있습니다.
4) 반복 학습 - TTS 기능을 이용하여 제시된 한글을 영어 문장으로 바꾸는 연습을 할 수 있습니다.
5) 전체 학습 - 문장 학습의 모든 문장들을 한눈에 볼 수 있습니다.
6) 문법 학습 - 간단한 문법을 학습할 수 있습니다.
7) 부록 학습 - 일기, 독해, 패턴, 전화, 공항, 여행, 명언, 명연설, 전래동화, 성경 구절 등을 학습할 수 있습니다.
8) 환경 설정 - 위젯 레벨 조절, 반복학습 속도 조절, 도움말 등을 볼수 있도록 구성하였습니다.

또한 폰 홈에 위젯을 설정할 수 있도록 하여 학습의 편의를 제공하였습니다.

영어는 재미있는 학문이라는 생각을 갖고 꾸준히 연습하고 관심을 갖는다면 여러분도 어느덧 영어로 말하고 있는 자신을 볼 수 있을 것입니다.


저작자 표시 비영리 변경 금지
신고
Posted by 천왕지짐
1. T 개발자 센터
    T store에 본인이 만든 앱 등록할 때 사용
    http://dev.tstore.co.kr



2. T store
    티스토어에서 본인이 등록한 앱 확인, 추천 및 댓글 작성 등에 사용
    http://www.tstore.co.kr


3. 안드로이드 마켓
    안드로이드 마켓에 앱 등록할 때 사용
    http://market.android.com/publish


4. T-ad
    앱에 광고 싣고 등록할 때 사용
    http://t-ad.co.kr


5. cauly
   앱에 광고 싣고 등록할 때 사용
   http://www.cauly.net

 



저작자 표시 비영리 변경 금지
신고
Posted by 천왕지짐

자바 프로그램에 대한 두번째 글입니다. 천천히 따라서 실습해 보시기 바랍니다. 그리고 개념과 원리를 명확히 이해하시기 바랍니다.

1. 클래스를 이용하는 예제

클래스를 하나 만든 후 만든 클래스를 다른 클래스에서 사용하는 예제이다.

■ HelloJava.java

package firstpackage;
public class HelloJava {
    public static void main(String[] args) {
        HelloCalled obj = new HelloCalled();
        obj.helloCalled();   // 아래 메소드를 직접호출한것과 동일
        System.out.println(obj.num);
        System.out.println(obj.str);
        obj.returnMeth();
    }
}

결과
10  안드로이드
Total = 55

설명

new HelloCalled(); 부분을 생성자라고 한다. 생성자는 이름 규칙이 클래스처럼(첫글자 대문자) 되어 있지만 사실 메소드이다. 초기화를 시키거나 해당 객체가 생성되면 한번 수행되는 역할을 한다.

■ HelloCalled.java

package firstpackage;
public class HelloCalled {
  HelloCalled(){ // 생략
  }
    //변수(variables)
    int num;
    String str;
    //메소드(method)
    public void helloCalled(){
        this.num = 10;       // this는 num이나 str을 의미한다.
        this.str = "안드로이드";
    }
    public void returnMeth(){
        int sum = 0;
        for(int i = 1; i <= 10; i++){
 sum += i;   
        }
        System.out.println("Total = " + sum);
    }
}

설명
보통 위와같은 방법처럼 메소드에서 어떤 결과를 수행하는 방법처럼 사용한다. 패키지안에 여러개의 클래스를 만들어 놓게 되면 쉽게 생성자를 통한 접근이 가능해 진다. 다른 앱에서도 필요한 경우 아예 패키지를 통째로 import시키면 수월하게 이용할 수 있을 것이다.

return을 사용하여 값 되돌려 보내기
아래 예제는 위의 예제에 있는 메소드에서 출력하는 방법을 쓰지 않고 값을 되돌려주는 방법을 사용한 예제이다.
메소드에서 값을 보낼 때는 return을 사용하는데 return은 하나의 값만 보낼 수 있다. 하지만 실제 프로그래밍 시에는 여러 개의 값을 보낼 수도 있어야 하므로 추후에 레퍼런스 타입에 대해 배워야 한다. 일반적으로 return값은 int, string, array, arraylist, class(Javabean) 방법을 사용한다.

■ HelloJava1.java

package firstpackage;
public class HelloJava1 {
    public static void main(String[] args) {
        HelloCalled1 obj = new HelloCalled1();
        int abc = obj.returnMeth();  // 결과를 받아야 하므로
        System.out.println("Total = "+abc);
    }
}



결과
Total = 55

■ HelloCalled1.java

package firstpackage;
public class HelloCalled1 {
    int num;
    String str;
}
public int returnMeth(){
    int sum = 0;
    for(int i = 1; i <= 10; i++){
        sum += i;
    }
    return sum;
}

설명
이전 예제와 달리 반환하는 값이 있으므로 returnMeth() 앞에 void 대신 리턴하는 값의 타입을 표시하며 호출한 프로그램(HelloJava1.java)쪽에서는 리턴값을 받는 변수를 지정하며 이 변수 역시 같은 Type(타입)이어야 한다.

이번에는 메소드를 호출하기만 하지 않고 메소드 쪽으로 값을 보내는 방법을 사용해보도록 하겠다. 호출할 때는 "메소드(변수,변수)" 형태를 사용하며 호출 받는 메소드쪽에서는 변수의 타입을 반드시 표시해야 한다. 즉, "메소드(변수타입 변수, 변수타입 변수)" 처럼 기입해야 하며 반드시 보내고 받는 변수의 개수 또한 동일해야 한다.

■ HelloJava2.java

package firstpackage;
public class HelloJava2 {
    public static void main(String[] args) {           
       HelloCalled2 obj = new HelloCalled2();
       int aaa = obj.returnMeth();
       System.out.println("Total = "+aaa);
       int num1 = 33;
       int num2 = 67;
       System.out.println(obj.moveMeth(num1, num2));
    }
}

결과
Total = 55
100

■ HelloCalled2.java

package firstpackage;
public class HelloCalled2 {
    int num;
    String str;
    public int returnMeth(){
        int sum = 0;
        for(int i = 1; i <= 10; i++){
 sum += i;
        }
        return sum;
    }
 
    public int moveMeth(int num1, int num2){
        int sum = 0;
        sum = num1 + num2;
        return sum;
    }
}

프로그래밍 작성 요령으로 메소드를 만들 때는 일단 void로 시작하는 것이 좋다. void로 시작하면 에러가 발생되지 않으며 추후 리턴값이 결정될 때 void 대신 실제 타입으로 변경하는 방법을 사용하는 것이 좋다.


저작자 표시 비영리 변경 금지
신고

'자바(JAVA)' 카테고리의 다른 글

자바 실행파일(exe) 만들기  (5) 2011.10.24
자바 프로그램 이해 - 5  (0) 2011.10.24
자바 프로그램 이해 - 4  (0) 2011.10.24
자바 프로그램 이해 - 3  (0) 2011.10.24
자바 프로그램 이해 - 2  (0) 2011.10.13
자바 프로그램 이해 - 1  (0) 2011.10.12
Posted by 천왕지짐

Vibrator vibe = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE); vibe.vibrate(500);

// 퍼미션        
<uses-permission android:name=
"android.permission.VIBRATE"></uses-permission>


저작자 표시 비영리 변경 금지
신고

'안드로이드 > 안드로이드 팁' 카테고리의 다른 글

개발과 등록에 필요한 몇몇 사이트  (0) 2011.10.15
Back 버튼 처리  (0) 2011.10.13
바이브레이터  (0) 2011.10.13
이전 액티비티(Activity)로 돌아가기  (0) 2011.10.13
안드로이드 아이콘 만들기  (1) 2011.10.12
인스톨 위치 설정하기  (0) 2011.10.12
Posted by 천왕지짐

1. 1.6 버전 이하

    onKeyDown(KeyEvent.KEYCODE_BACK, null);

2. 2.0 버전 이상

    onBackPressed();

저작자 표시 비영리 변경 금지
신고

'안드로이드 > 안드로이드 팁' 카테고리의 다른 글

Back 버튼 처리  (0) 2011.10.13
바이브레이터  (0) 2011.10.13
이전 액티비티(Activity)로 돌아가기  (0) 2011.10.13
안드로이드 아이콘 만들기  (1) 2011.10.12
인스톨 위치 설정하기  (0) 2011.10.12
토스트(toast)  (0) 2011.10.12
Posted by 천왕지짐

자바를 잘 모르더라도 안드로이드를 시작하고 개발할 수 있겠지만 자바를 알면 훨씬 쉽게 이해할 수 있기 때문에 자바에 대해 조금만 설명하려고 합니다.

1. 자바 프로그램 개발 툴 종류

- SE(Standard Edition) : 클라이언트 지향의 기본적인 환경
- EE(Enterprise Edition) : 서버 소프트웨어 개발을 위한 환경
- ME(Micro Edition) : PDA나 휴대 전화등 소형기기를 위한 소프트웨어 개발 환경

2. Java SE 6 설치

자바 개발을 위해 JDK(Java Development Kit)를 설치해야한다.
1) http://java.sun.com/javase/downloads/index.jsp 접속
2) jdk-6u21-windows-i586.exe 다운로드(가급적 최신버전)
3) 설치

3. 프로그래밍의 기본 흐름

프로그래밍을 하기 위해 텍스트 에디터(예, 메모장)로 기술한 후 바이트 코드로 변환하기 위해 컴파일러를 사용한다. 컴파일러는 JDK 설치하는 것으로 해결된다.

1) .java라는 확장자를 붙여 텍스트 파일로 기술하며 소스파일이라고 불린다.
    - Hello.java

2) 소스 파일을 컴파일 한다. 대소문자를 구분하며 확장자까지 반드시 기술해야 하며 컴파일하면 .class가 붙는다.
    - javac Hello.java

3) 프로그램을 실행한다. 확장자는 붙이지 않는다.
    - java Hello

4. 프로그램 기술시 Rule

1) 대소문자를 구별하여 사용한다.
2) 전각 스페이스를 사용하면 찾기가 어려워진다.
3) 주석은 /* */ 또는 //를 사용한다.
4) 예약어는 사용하지 않는다.

5. Hello World 프로그램 작성하기

1) 메모장과 같은 에디터를 실행하여 코드를 작성한다. 메모장 이외에 EditPlus와 같은 에디터를 추천한다.

2) 아래 코드를 작성한 후 Hello.java로 저장한다. 아래 코드 중 앞의 숫자는 해설을 위해 포함시켜 놓은 것으로 코드 작성 시 생략한다.

1: // 프로그램명 : Hello.java
2: class Hello{
3: public static void main(String[] args){
4:     System.out.println("Hello World");
5: }
6: }

3) 도스창으로 들어가기 위해 윈도우즈 시작-실행에 cmd라고 입력한 후 실행시킨다.
4) 도스창에서 위의 Hello.java가 저장되어 있는 폴더로 이동한다. 이동 명령어는 cd이다.
5) 아래 명령어를 실행시켜 소스프로그램을 목적프로그램으로 만든다.
    - javac Hello.java
4) 도스창에서 이어서 아래 명령어를 실행시켜 목적프로그램을 실행시킨다.
    - java Hello

프로그램 설명

1: // 이부분은 주석이다.
2: 항상 ‘class 클래스명’ 부분부터 시작한다.
3: 프로그램은 이 메인 메소드(main()함수)부터 시작한다.
4: 문자열을 표시하는 print() 메소드이다. 하나의 문장이 끝남을 표시하기 위해 세미콜론(;)을 찍으며 println() 메소드는 문자열을 화면에 표시하고 행을 바꾼다.
5,6: 메인 메소드와 클래스의 끝을 나타낸다.

6. 다른 프로그램 작성하기

프로그램 작성을 이해하기 위해 다른 프로그램을 작성하고 실행해 보자.

1: // 프로그램명 : Compare.java
2: class Compare{
3: public static void main(String[] args){
4:    int a = 10, b = 20;
5:    System.out.println(" a = "+a + " b = " + b);
6:    System.out.println(" a < b --> " + (a < b));
7:    System.out.println(" a > b --> " + (a > b));
8:    System.out.println(" a == b --> " + (a == b));
9:    System.out.println(" a = b --> " +(a = b));
10: }
11: } 

핵심 포인트

- 클래스 명은 대문자로 시작
- 메소드 명은 소문자로 시작
- 두 단어의 합성어의 경우 두 번째 단어는 대문자로 시작

저작자 표시 비영리 변경 금지
신고

'자바(JAVA)' 카테고리의 다른 글

자바 실행파일(exe) 만들기  (5) 2011.10.24
자바 프로그램 이해 - 5  (0) 2011.10.24
자바 프로그램 이해 - 4  (0) 2011.10.24
자바 프로그램 이해 - 3  (0) 2011.10.24
자바 프로그램 이해 - 2  (0) 2011.10.13
자바 프로그램 이해 - 1  (0) 2011.10.12
Posted by 천왕지짐
안드로이드용 아이콘은 72 x 72, 48 x 48, 36 x 36 이렇게 3가지 크기로 만들어서 res 폴더의 drawable-hdpi, drawable-mdpi, drawable-ldpi 에 각각 저장해야 합니다.

예를 들어




위와같이 세개의 이미지를 준비한 후 각 폴더에 저장하면 되는데 이때 이미지의 이름은 모두 icon.png 입니다. 세개를 각각 만들기 보다는 하나만 만들어 놓고 포토샵이나 알씨 등을 이용해 사이즈를 변경하면 되겠죠...

그리고 티스토어(TStore)에 등록하기 위해서는 추가적으로 76 x 76, 212 x 212 사이즈의 아이콘도 필요합니다.

또한 아이콘 제작시에는 가급적 아이콘 제작 가이드 등을 검토해 보신 후 제작하는 것이 좋습니다.
저작자 표시 비영리 변경 금지
신고

'안드로이드 > 안드로이드 팁' 카테고리의 다른 글

바이브레이터  (0) 2011.10.13
이전 액티비티(Activity)로 돌아가기  (0) 2011.10.13
안드로이드 아이콘 만들기  (1) 2011.10.12
인스톨 위치 설정하기  (0) 2011.10.12
토스트(toast)  (0) 2011.10.12
앱 이름 한글로 만들기  (0) 2011.10.12
Posted by 천왕지짐

Eclipse로 JAVA 프로그래밍을 하다보면 반복적인 키 조작이 필요합니다. 대부분의 프로그램(아래한글, 엑셀, 파워포인트, 포토샵 등)들이 그렇듯이 단축키를 사용하면 원하는 기능을 빠르게 실행시킬 수 있습니다.

먼저 하나의 에디터 창에서 작업할 때 여러 개의 클래스를 작성하다보면 다른 클래스로 이동하며 프로그래밍을 하게 됨으로써 여러 번의 이동과 키 조작의 반복이 이루어집니다. 이 때 창을 분할하여 사용하면 편리한데 분할하는 방법으로 에디터 창의 탭 부분을 아래로 끌어 내리는 방법이 있습니다.

라인번호를 표시는 에디터 창의 왼쪽 회색부분 빈 공간에서 마우스 오른쪽 버튼을 클릭한 후 Show Line Numbers를 선택하는 방법이 있습니다.

Eclipse의 단축키를 확인하거나 필요한 키로 변경하는 방법은 Window - Preferences - Workbench - Keys 메뉴에서 가능하며 자신에게 익숙한 키로 바꾸어 사용할 수 있지만 많이 사용하지는 않는것 같습니다.


Java Editor 단축키

Ctrl +Shift +M

특정 클래스 Import 시키기

Ctrl +Shift +O

자동으로 Import 시키기

Ctrl +Shift +F

코드 자동 정리

Ctrl +Shift +G

특정 메써드나 필드를 Reference하고 있는 곳을 찾는다.

Ctrl +1(Quick Fix)

에러가 발생했을 경우 Quick Fix를 통해 쉽게 해결이 가능하다.

Ctrl +Shift +/

블럭 주석 설정(Ctrl +Shift +c는 라인단위)

Alt +Shift +UP

커서를 기준으로 토큰단위 블럭지정

Alt +Shift +DOWN

커서를 기준으로 토큰단위 블럭해제

CTRL +L

특정 라인(줄번호)로 가기

Alt +Shift +J

자동으로 주석 달기 (메소드나 멤버변수에 포커스 두고 실행)

CTRL +ALT +↓↑

커서가 있는 라인과 동일한 내용 아래줄 또는 윗줄에 복사

Ctrl +Z

실행 취소

Shift +Enter

코드 중간에서 다음 줄 생성

Ctrl + S

저장(전체 저장하기는 Ctrl +Shift +S)

* 에러가 발생한 라인의 앞부분을 마우스로 클릭하면 해당 에러에 대한 수정사항을 보여주므로 쉽게 작업할 수 있습니다.


신고
Posted by 천왕지짐

인스톨 위치를 설정하기 위해서는 manifest 파일만 수정하면 됩니다. preferExternal은 외부 저장장치(SD)에 기본적으로 저장하며, 만약 외부 저장 장치가 꽉 찬 상태이면 내부에 저장한다는 뜻입니다. preferExternal 외에 auto와 internalOnly도 선택할 수 있습니다. auto는 기본적으로 내부에 저장을 하고, 내부에 공간이 없으면 외부에 저장을 하겠다는 뜻입니다. internalOnly는 무조건 내부에만 저장을 하겠다는 뜻이다.

<manifest xmlns:android="http://schemas.android.com/apk/res/android"

android:installLocation="preferExternal"

... >


신고
Posted by 천왕지짐

문자열을 보여주는 시간에 따라 Toast.LENGTH_LONG, Toast.LENGTH_SHORT 두 종류가 있으며 다음과 같이 사용합니다.

Toast.makeText.(this, "토스트 메시지",Toast.LENGTH_SHORT).show();

또는

Toast.makeText(프로젝트명.this, “문자열”, Toast.LENGTH_LONG).show();


신고

'안드로이드 > 안드로이드 팁' 카테고리의 다른 글

안드로이드 아이콘 만들기  (1) 2011.10.12
인스톨 위치 설정하기  (0) 2011.10.12
토스트(toast)  (0) 2011.10.12
앱 이름 한글로 만들기  (0) 2011.10.12
화면방향 가로 세로 고정하기  (0) 2011.10.12
StatusBar, TitleBar 없애기  (0) 2011.10.12
Posted by 천왕지짐

앱 이름은 최초 프로젝트 이름이 되므로 영문으로 생성됩니다. 한글로 바꾸기 위해서는 아래의 내용처럼 기존 영문 프로젝트명을 한글로 바꾸기만 하면 됩니다.

아래와 같이 res - values 폴더안의 strings.xml에서 데이터를 변경한다.

<string name="app_name">한맺힌영어</string>


신고

'안드로이드 > 안드로이드 팁' 카테고리의 다른 글

안드로이드 아이콘 만들기  (1) 2011.10.12
인스톨 위치 설정하기  (0) 2011.10.12
토스트(toast)  (0) 2011.10.12
앱 이름 한글로 만들기  (0) 2011.10.12
화면방향 가로 세로 고정하기  (0) 2011.10.12
StatusBar, TitleBar 없애기  (0) 2011.10.12
Posted by 천왕지짐

앱 개발 시 화면이 자동으로 전환되지 않고 가로 또는 세로로 고정하고 싶은 경우가 발생됩니다. 이때 AndroidManifest.xml의 activity 속성 중 screenOrientation을 다음과 같이 지정하면 간단히 해결됩니다. 

1. AndroidManifest.xml 에서 삽입

// 화면을 세로로 유지
<activity android:screenOrientation="portrait">

//화면을 가로로 유지
<activity android:screenOrientation="landscape">

2. SourceCode상에서는 다음과 같이 사용

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);


신고

'안드로이드 > 안드로이드 팁' 카테고리의 다른 글

안드로이드 아이콘 만들기  (1) 2011.10.12
인스톨 위치 설정하기  (0) 2011.10.12
토스트(toast)  (0) 2011.10.12
앱 이름 한글로 만들기  (0) 2011.10.12
화면방향 가로 세로 고정하기  (0) 2011.10.12
StatusBar, TitleBar 없애기  (0) 2011.10.12
Posted by 천왕지짐