Android 기술 Q&A 
Q&A 게시판에 질문을 남기신 글에 대한 답변/덧글/쪽글에 대한 Push 메일 서비스를 받고자 하시는 분들은
☞ Push 메일 서비스 공지를 필독하시기 바랍니다.
메소드 생성 관련 질문입니다.
작성자 노타이
작성일 2016-12-09 (금) 16:13
분 류 질문
ㆍ추천: 0  ㆍ조회: 5084      
IP: 175.xxx.100
아래와 같이 붉은색으로 표시된 메소드들을 사용하지 않고 다른 메소드를 만들어 사용하고 싶은데
만들어본 메소드는 실제 사용하지 못했고 사용불가능하다는 메세지가 나왔습니다.
사용가능한 메소드를 만드는데 가능여부확인 방법과 어떤 이름으로 메소드를 만들어야 하는지 궁금합니다.

예)버른클릭을 하지않고 onCreate(Bundle savedInstanceState) 다음에 바로 
 databaseName = editText.getText().toString();
        //데이터베이스를 여는 과정
        try {
            //database = openOrCreateDatabase(databaseName, Context.MODE_PRIVATE, null);

            //Helper사용 데이터 베이스를 만드는 부분이며 SelfWashLisDatatHelper를 만들어 사용함. 여기서 1은 버전정보이며 테이블을 추가했을 경우은 숫자를 2로 변경함.
            datatHelper = new SelfWashLisDatatHelper(getApplicationContext(), databaseName, null, 1);
            database = datatHelper.getWritableDatabase();
            plintln("데이터베이스를 열었습니다." + databaseName);
        }catch (Exception e) {
            e.printStackTrace();
        }
        내용을 실행 시키려면 사용가능한 메소드를 만드는데 가능여부확인 방법과 어떤 이름으로 메소드를 만들어야 하는지 아니면 찾는 방법이 궁금합니다.
그리고 아래에서 private void plintln(String data) {
        textView.append(data + "n");
    } 메소드도 어떻게 이 메소드도 사용가능한지 확인하고 만들었는지 알고 싶습니다.
    public void onButtonClick (View v) {
        databaseName = editText.getText().toString();
        //데이터베이스를 여는 과정
        try {
            //database = openOrCreateDatabase(databaseName, Context.MODE_PRIVATE, null);

            //Helper사용 데이터 베이스를 만드는 부분이며 SelfWashLisDatatHelper를 만들어 사용함. 여기서 1은 버전정보이며 테이블을 추가했을 경우은 숫자를 2로 변경함.
            datatHelper = new SelfWashLisDatatHelper(getApplicationContext(), databaseName, null, 1);
            database = datatHelper.getWritableDatabase();
            plintln("데이터베이스를 열었습니다." + databaseName);
        }catch (Exception e) {
            e.printStackTrace();
        }
    }

    public void onButtonClick2 (View v) {
        //createTable(); onCreate(SQLiteDatabase db)부분에서 호출됨.

        // Helper를 사용할 경우 사용하지 않음
        /*
        tableName = editText2.getText().toString(); //테이블을 읽어오는 부분
        //테이블 만느는 과정
        try {
            if (databaseName != null) {
                database.execSQL("CREATE TABLE if not exists " + tableName + "("
                        + "_id integer PRIMARY KEY autoincrement, "
                        + "name text,"
                        + "adress text, "
                        + "phone text"
                        + ")");
                plintln("테이블을 만들었습니다." + tableName);
            }else {
                plintln("데이터베이스를 열어 주세요.");
            }
        }catch (Exception e) {
            e.printStackTrace();
        }
        */
    }
    public void createTable(SQLiteDatabase db) {
        tableName = editText2.getText().toString();
        //테이블 만느는 과정
        try {
            if (db != null) {
                db.execSQL("CREATE TABLE if not exists " + tableName + "("
                        + "_id integer PRIMARY KEY autoincrement, "
                        + "name text, "
                        + "adress text, "
                        + "phone text"
                        + ")");
                plintln("테이블을 만들었습니다." + tableName);
            }else {
                plintln("데이터베이스를 먼저 열어 주세요.");
            }
        }catch (Exception e) {
            e.printStackTrace();
        }
    }

    //데이터 베이스가 있는경우
    public  void changeTable (SQLiteDatabase db) {
        try {
            if (db != null) {
                db.execSQL("CREATE TABLE if not exists " + "PRICE" + "("
                        + "_id integer PRIMARY KEY autoincrement, "
                        + "name text,"
                        + "price integer"
                        + ")");
                plintln("PRICE" + "테이블을 추가로 만들었습니다.");
            }else {
                plintln("데이터베이스를 열어 주세요.");
            }
        }catch (Exception e) {
            e.printStackTrace();
        }
    }

    public void onButtonClick4 (View v) {

        try {
            if (tableName == null) {
                tableName = editText2.getText().toString();
            }

            if (database != null) {
                Cursor cursor = database.rawQuery("SELECT _id, name, adress, phone FROM " + tableName, null);

                //리스트뷰에 붙이는 부분
                startManagingCursor(cursor);

                String [] columns = new String[] {"name", "adress", "phone"};
                int[] to = new int[] {R.id.textView2, R.id.textView3, R.id.textView4};

                //columns와 to 부분이 맵핑되는 부분
                SimpleCursorAdapter adapter = new SimpleCursorAdapter(this, R.layout.selfwash_item, cursor, columns, to);
                listView.setAdapter(adapter);
                adapter.notifyDataSetChanged();


                int count = cursor.getCount();
                plintln("테이블에 갯수는 : " + count);

                for (int i = 0; i < count; i++) {
                    cursor.moveToNext();
                    int _id = cursor.getInt(0);
                    String name = cursor.getString(1);
                    String adress = cursor.getString(2);
                    String phone = cursor.getString(3);

                    plintln("테이블# : " + i + ":" + _id + ","  + name + ","  +  adress + ","  +  phone);
                }

                //cursor.close();
                plintln(tableName + "에 데이터를 조회했습니다.");

            }else {
                plintln("데이터베이스를 열어 주세요.");
            }
        }catch (Exception e) {
            e.printStackTrace();
        }
    }

    private void plintln(String data) {
        textView.append(data + "n");
    }

    //Helper사용시 만들어 짐. 생성자, 콜백메소드
    class SelfWashLisDatatHelper extends SQLiteOpenHelper {

        public SelfWashLisDatatHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) {
            super(context, name, factory, version);
        }

        @Override
        public void onOpen(SQLiteDatabase db) {
            super.onOpen(db);

            Toast.makeText(getApplicationContext(), "helper의 onOpen호출됨.", Toast.LENGTH_LONG).show();
        }

        @Override
        public void onCreate(SQLiteDatabase db) {
            //이 부분에서도 createTable(); 호출됨.
            Toast.makeText(getApplicationContext(), "helper의 onCreate호출됨.", Toast.LENGTH_LONG).show();
            createTable(db);

        }

        @Override
        public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
            Toast.makeText(getApplicationContext(), "helper의 onUpgrade호출됨." + oldVersion +"->" + newVersion, Toast.LENGTH_LONG).show();
            changeTable(db);
        }

        public void insert(String _query) {
            SQLiteDatabase db = getWritableDatabase();
            db.execSQL(_query);
            db.close();
        }

        public void update(String _query) {
            SQLiteDatabase db = getWritableDatabase();
            db.execSQL(_query);
            db.close();
        }

        public void delete(String _query) {
            SQLiteDatabase db = getWritableDatabase();
            db.execSQL(_query);
            db.close();
        }

        public String PrintData() {
            SQLiteDatabase db = getReadableDatabase();
            String str = "";

            Cursor cursor = db.rawQuery("select * from FOOD_LIST", null);
            while(cursor.moveToNext()) {
                str += cursor.getInt(0)
                        + " : foodName "
                        + cursor.getString(1)
                        + ", price = "
                        + cursor.getInt(2)
                        + "n";
            }

            return str;
        }

    }
}
덧글 쓰기 0
3500
※ 회원등급 레벨 0 이상 읽기가 가능한 게시판입니다.
    N     분류     제목    글쓴이 작성일 조회
4995 질문 안드로이드 무전기앱 좋은 오픈소스가 있을까요?.. 녹트 2017-01-30 14034
4994 안드로이드 웹뷰 페이지 로딩문제 연신내막차 2017-01-23 19200
4993 통화녹음 관련하여 질문드립니다. 뽀죠 2017-01-16 24724
4992 질문 전화받기 기능 구현-Marshmallow 6.0.1 이상 와우92 2017-01-04 15355
4991 Adapter newView bindView 를 작업스레드에서 실행 할 순 없나.. 찌누 2016-12-12 9939
4990 질문 메소드 생성 관련 질문입니다. 노타이 2016-12-09 5084
4989 실행 디바이스 선택시 문제 노타이 2016-12-03 3428
4988 질문 Re.. 자답 찌누 2016-11-29 1257
4987 질문 한글 깨지는 문제 문의 찌누 2016-11-29 1507
4986 질문 안드로이드 OS별 저장 공간 관련. [2] 날펭 2016-11-22 1686
4985 질문 안드로이드 실무개발? 질문입니다. [1] 액션바 2016-11-03 1394
4984 질문 AOSP 초보 질문 [1]+1 찌누 2016-11-02 1378
4983 질문 안드로이드 6.0(마쉬멜로우)에서 Doze모드 파인드로이드 2016-10-29 1463
4982 오디오패스(스피커,이어잭)를 동시에 2개 사용 가능한가요?.. [2] J하늘리스 2016-10-17 1735
4981 JNI로 CPP 변수 변경하기 문의드립니다. jaebro 2016-10-11 1413
4980 질문 안드로이드 폰 오디오 신호 받기 RealTimeCh 2016-09-29 1688
4979 질문 Re..해결했습니다. 호루스 2016-08-31 1807
4978 질문 안드로이드 스튜디오에서 옵션메뉴가 나오질 않네요.. 호루스 2016-08-30 2375
4977 질문 블루투스 통신에서 고속의 데이터 수신 중 중간에 데이터 유실.. [3] 프로 2016-08-15 2259
4976 블루투스 에서 remote device가 강제로 연결을 끊었다는 것을 .. [1] bonjoy 2016-07-19 2163
4975 material 관련 라이선스 문의 bro 2016-06-27 2221
4974 질문 안드로이드 키보드 테마 작업 완봉 2016-05-25 2532
4973 질문 USB 이용한 오디오(통화) 관련 질문 드립니다. 주너 2016-05-24 2439
4972 질문 안드로이드 다른 어플 사이즈 조절 문제 kulman 2016-05-13 2499
4971 질문 변수 설정을 어떻게 해야할지 모르겠어요 [1] 배우러왔어요 2016-05-08 2346
4970 파일시스템 Read-Only에서 Read Write로 변경 어떻게하나요.. [1] windy21 2016-05-06 2591
4969 질문 아이피 바꾸어 가면서 특정 웹 사이트 접속하기.. 다클 2016-05-04 2635
4968 질문 RTSP 영상 스트리밍 플레이어 개발 관련 문의 후니후니훈2 2016-04-08 2746
4967 질문 Android MarshMallow에서 노말한 퍼미션은 어떻게 권한을 획득.. 툴체인 2016-04-07 2932
4966 질문 미디어컨트롤러 위에 이미지나 선으로 표시를 하고 싶은데..... kkk111 2016-03-25 2512
4965 질문 안드로이드 도트 매트릭스 질문입니다. 홍윤호 2016-02-19 3028
4964 질문 eth0 IP 변경 [2] 럽어페어 2015-12-16 4324
4963 카드게임과 자동 로그인 문의 [1] 찌누 2015-11-22 5184
4962 질문 고수님들.! 두가지 기능(블루투스, 영상처리) 를 어떻게 넣어.. parkch12 2015-11-06 4145
4961 질문 시스템 서비스 등록 크크크 2015-11-03 3451
4960 질문 slattach 기능을 안드로이드에서 이용할 수 있는 방법 문의드.. 엘카이저 2015-11-02 3700
4959 질문 루팅 관련 질문입니다. [2] 비둘기 2015-10-05 4003
4958 각각 이미지 확대 문제.. [1] fly 2015-10-03 4108
4957 질문 textview id 오류 질문합니다 [1] 어그래너 2015-10-02 3681
4956 질문 질문있습니다., [2] veronica 2015-10-02 3611
4955 게시판 자료가 다운로드 후 깨집니다. [5]+1 리로 2015-10-01 3986
4954 질문 안드로이드 개발 pc 추천 부탁드려요 [1] 레트 2015-09-18 4276
4953 external 에 추가하려고 하는 방법 질문드립니다... [1] 비둘기 2015-09-15 3742
4952 질문 초보 개발자 입니다. 초짜3 2015-09-04 4157
4951 질문 자바 람다식을 변수에 대입하는 방법 문의 [2]+2 찌누 2015-09-01 4382
4950 질문 init rc에서 mkdir시 소유자 ( user / group ) 설정 방법 문의.. 비둘기 2015-08-28 3596
4949 SMS 문자를 Xml 문서로 저장시 특수문자 기호에서 예외발생... [2]+2 찌누 2015-08-26 4427
4948 안드로이드를 깔았는데 안드로이드가 실행이안되요 ㅠ.. 쿠쿠루바 2015-08-24 3632
4947 질문 안드로이드 버튼 질문입니다. [1] 윤민 2015-08-20 3961
4946 질문 메뉴 클릭시 어두워지는 문제 찌누 2015-08-13 3452
12345678910,,,100