안드로이드 스튜디오에 AutoCompleteTextview라는 메서드를 활용해서
모바일 상에 자동완성기능을 간단하게라도 구현하려고 하는데요,
다름이 아니라 여러 자료를 참고해보면 유동적으로 사용자가 입력한 단어에 맞는 자동완성을 추천해주는 게 아니라
딱 코드 상에서 정해진, A로 시작하는 자동완성.. B로 시작하는 자동완성.. 이렇게 수동적으로 밖에 설정을 못해주나요?
좀 더 유동적으로 사용자가 입력한 단어가 Z면 Z로 시작하는 단어들을 추천해주고, 뭐 이렇게 할 수 있는 메서드나 방법은 없을까요?
자동완성 쓰는사람이있나? 특정 데이터 안에서 자동완성이라면 몰라도 일반 단어 자동완성은 거의 안쓰는거 아냐? 나만안쓰나?
특정 데이터 안에서여도 상관은 없어요. 1차적인 목표가 사용자가 입력하는 단어에 맞게 자동완성 단어들을 추천해주는 거라..
근데 특정 데이터라고 해도 너무 크지 않나요? 정말 수많은 단어들에 대한 자동완성 데이터가 다 들어가있다는 건데..
질문을 이해를 못하겠다. 질문의 요지는 고정된 목록에서 보여주는게 아니라 뭔가 유동적인 데이터나 타 OpenAPI를 연동하고 싶다는거임? adapter를 만들면 됨.
http://adityagore.blogspot.kr/2012/10/android-androidautocompletetextview.html
이 글 참조. 아니면 질문을 좀 정확하게 해봐;;
코드상에서 A, B, C 일케 지정하는건 없고 보통은 arrayadapter에 걍 목록 다 때려박고 끝인데 지정한다는게 뭔 말인지 모르겠다.
아 그렇져! 아는게 없어서 좀 질문도 추상적이였는데.. 그니까 모바일에서 사용자가 입력할 단어가 뭔지를 모르잖아요. 뭐 '아'로 시작하는 단어를 입력하려 할 수도 있고 '가'로 시작하는 단어를 입력하려 할 수도 있고 이런건 사용자 마음인데, 이렇게 사용자가 입력하는단어에 맞춰서 자동완성 단어들을 보여주려면 어떻게 해야하느냐? 인데
사실 어떤 단어를 입력하려 하든 정말 무수한 자동완성 단어 리스트들이 나올 수가 있는데, 그럼 얘네를 다 말씀하신 어레이어댑터에 때려박아놓고 활용을 해야만 하느냐 이거였습니다.
일단 암것도 없는 상태에서 단어 검색하면 그 단어를 어딘가 저장해놓고, 그리고 나중에 어떤 단어 검색하고자 하면 저장한 단어 리스트를 bk트리 같은걸로 유사한 단어만 골라내게 해서 어레이어댑터에 박아넣고 리스트로 뽑아내주면 될 것 같은데...
그리고 어레이어댑터를 활용한다고 해도 이걸 구현하는 제가 그 무수히 많은 자동완성 리스트들을 다 떼려박아야 하는 입장인데, 이런 방법 뿐인건가요?
일일히 다 수작업으로 때려넣기 보다는야 DB에 저장하게 하면 되지 않을까 싶은뎁쇼
DB에 저장하게용?? 위에서 말씀하신 방법대로 인가요? 정확하게 이해가 안됩니당.. 유튜브 같은데서 안드로이드 스튜디오 자동완성기능 찾아보면서 하는 활용법들을 보니 어레이어댑터의 item으로써 자동완성 단어들을 저장을 해놓고 하던데
만약에 이걸 실제로 활용한다고 했을때 아무리 못해도 1천개는 넘어갈 그 자동완성 단어들을 제가 다 item으로 저장해놓고 활용하려면 정말 비효율적이고 시간도 오래걸리니 다른 방법으로 자동완성 단어들을 저장해놓는다던가, 불러올 방법이라든가 이런게 있어야 할 것 같은데..
색인해야 할 수가 1000개가 넘어간다면 그걸 어디다가 저장하시게요.. 그 많은 자동완성 단어들을 저장할려면 sqlite 같은걸로 단어를 자체 내부 db에 저장하셔서 검색 할 때마다 어댑터에 불러오시덩가 해야져
아 맞아여 저장공간도 문제였는데.. 그렇다면 sqlite DB에 저장하는데.. 단어 수가 아무리못해도 말씀대로 1000개 이상인데, 이 단어들은 직접 수작업으로 DB에 넣어줘야 할까요?
qwdqw : 어째튼 fixed된 리스트는 무조건 있어야한다. 데이터가 많다면 sqlite에 집어넣고 그걸 가지고 오면된다. 노이ㄴ흉이 잘 알려줬네. 그건 근데 어차피 구글님께 sqlite adapter autocompletetextview같은걸로 검색하면 많이 알려주실테니 자세한 설명은 생략한다.
qwdqw : 그거야 흉맘이지? 어디 웹같은데서 크롤러 만들어서 페이지 긁어오고 형태소분석기같은거나 단순히 \s+로 분리해서 목록 만들어서 넣어주게끔 만들어줘도 되고.
그걸 못하면 뭐 역시 머리가 나쁘면 손발이 고생을 해야?
아 형님들 오전부터 너무 감사드립니다. 손바닥으로 눈 가린것마냥 깜깜했는데 빛이 보이는 기분이에요
마지막 질문일 것 같은데 sqlite를 한번도 활용해본 적이 없거든요. 따로 설치를 해야하나요? 아니면 안스에서 따로 불러올 수 이싼요?
안스에서 지원해줌여 자세한건 디벨로퍼 문서 ㄱㄱ
으어 감사합니다