마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

안드로이드 검색 문제.. ㅜ

0 추천
else if (v == btnSerch) {


            Cursor s1 = dbHandler.select(

                    edtCarName.getText().toString(),
                    edtCarPower.getText().toString());


            if (s1 == null) {
                Toast.makeText(getApplicationContext(), "검색 실패", Toast.LENGTH_LONG).show();
            } else {
                Toast.makeText(getApplicationContext(), "검색 성공", Toast.LENGTH_LONG).show();

          //      cursor = dbHandler.select(  );




                arr_list = new ArrayList<AdepterDTO>();

                while (cursor.moveToNext()) {
                    String id = cursor.getString(cursor.getColumnIndex("id"));
                    String name = cursor.getString(cursor.getColumnIndex("name"));
                    String power = cursor.getString(cursor.getColumnIndex("power"));

                    AdepterDTO dto = new AdepterDTO(id, name, power);
                    arr_list.add(dto);

                }
                cursor.close();
                invalidate();
            }

------------------------------------------------------------------------------------------------------------------------

 public Cursor select(String name ,String power) {


        Cursor cursor =  myDB.query("Carlist",null," name Like ? and power Like?  "
                ,new String[] {"%"+ name+"%","%"+power+"%"}, null,null,null);


        return cursor;


    }


서치부분 코드 일부구요 .. ㅜㅜ 업데이트와 인서트 딜리트는 selectall() 메서드를 통해 리스트뷰에 결과를 띄워줍니다.

하지만 서치는 내가 원하는 값만 에딧텍스트에 입력하여 나오게 되야 하지 않습니까 . ㅜ

다른것들은 selectall 메서드 이용환다 하지만 서치는 ㅜ .. 모든 데이터를 보여주면 안되지 않습니까 ㅜ ..

 

방법을 모르겠습니다 ㅜ 보시는 바와같이  헨들러에 구현된 select메서드안에있는 쿼리를 넘겨주고 있습니다 ㅜ

그다음에 토스트 출력하고 eles 라면 실행 되는부분인데 ㅜ .. 이부분 부터 모르겠습니다 ㅜ ..

 

안드로이드 고수님들 제발 .. 그냥 보고 가지마시고 ㅜ.. 도와 주시면 감사하겠습니다 ㅜ .

부탁드릴게요 ㅜ 제발 그냥 보고 가지마세요 ㅜ ..  

익명사용자 님이 2015년 6월 14일 질문
그냥 가지 말라는건지??
코드를 어디서 가져온거라 이해를 못하겠단건지,
오류가 난다는건지
난 님의 질문이 뭔소린지 모르겠음.
그래서 취직이나 하겠으며 월급이나 받아먹고 살겠습니까?
좀 섭섭한 말이겠지만,
어차피 이쪽 분야 자질이 없는 것 같은데 그냥 어디 편의점 알바부터 몸으로 때우는 일 시작하는게 빠른 성공을 보장하지 않을까요?
위에 익명분이 말을 쎄게 하시긴 했지만..;; 질문의도가 뭔지 모르겠다는 의견에 한 표 던짐.원하는게 뭔지 확실하게 알려주세요. 코드는 다 짜놓으셨는데 모르겠다는건 님이 직접 짠게 아니라는 소리로 들리는데요. 에디트텍스트의 키워드를 입력하고 버튼을 눌렀을 때 텍스트가 null이 아니라 밑의 else로 빠지게 되면(검색성공)  
db에서 해당 키워드를 가지고 select한 후, 그 데이터값을 다시 어댑터를 통해 리스트뷰에 출력하면 되지 않나요..? 급하게 다 하려하지마시고 하나하나 해보세요. 일단 검색후의 데이터들이 제대로 뽑혔는지 확인하세요

1개의 답변

0 추천
else if (v == btnSerch)
{
  Cursor s1 = dbHandler.select(
  edtCarName.getText().toString(), edtCarPower.getText().toString());

  if (s1 == null)
  {
    Toast.makeText(getApplicationContext(), "검색 실패", Toast.LENGTH_LONG).show();
  }
  else
  {
    Toast.makeText(getApplicationContext(), "검색 성공", Toast.LENGTH_LONG).show();

    arr_list = new ArrayList<AdepterDTO>();

    while (cursor.moveToNext())
    {
      String id = cursor.getString(cursor.getColumnIndex("id"));
      String name = cursor.getString(cursor.getColumnIndex("name"));
      String power = cursor.getString(cursor.getColumnIndex("power"));

      AdepterDTO dto = new AdepterDTO(id, name, power);
      arr_list.add(dto);

    }
    cursor.close();
    invalidate();
  }

  ------------------------------------------------------------------------------------------------------------------------

  public Cursor select (String name, String power)
  {
    Cursor cursor = myDB.query("Carlist", null, " name Like ? and power Like?  ", new String[]{"%" + name + "%", "%" + power + "%"}, null, null, null);
    return cursor;
  }
}

답변은 아니고 엉망인 들여쓰기만 바로 잡고 갑니다. 

쎄미 (162,410 포인트) 님이 2015년 6월 15일 답변
...