package Ġcom .` fun `. auction . ui Ċ Ċ import Ġandroid . app . Activity Ċ import Ġandroid . content . Intent Ċ import Ġandroid . view . View Ċ import Ġandroid . widget . Toast Ċ import Ġandroidx . recyclerview . widget . Linear LayoutManager Ċ import Ġcom .` fun `. auction . R Ċ import Ġcom .` fun `. auction . ui . adapter . Poi List Check Adapter Ċ import Ġcom . baidu . mapapi . search . core . Poi Info Ċ import Ġcom . baidu . mapapi . search . core . SearchResult Ċ import Ġcom . baidu . mapapi . search . poi .* Ċ import Ġcom . ch ad . library . adapter . base . Base Quick Adapter Ċ import Ġcom . ch ad . library . adapter . base . listener . On ItemClickListener Ċ import Ġkotlinx . android . synt hetic . main . fragment _ search .* Ċ Ċ class ĠSearch Fragment Ġ: ĠBase Fragment () Ġ{ ĊĊĠĠĠ Ġvar Ġpo i Search : ĠPo i Search ? Ġ= Ġnull ĊĠĠĠ Ġvar Ġcity Str : ĠString ? Ġ= Ġnull ĊĠĠĠ Ġvar Ġm Load Index : ĠInt Ġ= Ġ 0 ĊĊĠĠĠ Ġoverride Ġfun Ġget Layout Id () Ġ= ĠR . layout . fragment _ search ĊĊĠĠĠ Ġoverride Ġfun Ġinit () Ġ{ ĊĠĠĠĠĠĠĠ Ġre cyclerView . setLayout Manager ( Linear LayoutManager ( mContext )) ĊĠĠĠĠĠĠĠ Ġvar Ġpo i ListAdapter Ġ= ĠPo i List Check Adapter () ĊĠĠĠĠĠĠĠ Ġre cyclerView . setAdapter ( poi ListAdapter ) ĊĠĠĠĠĠĠĠ Ġpo i ListAdapter . setOn ItemClickListener ( object Ġ: ĠOn ItemClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Item Click ( adapter : ĠBase Quick Adapter < *, Ġ* >, Ġview : ĠView , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġitem : ĠPo i Info Ġ= Ġpo i ListAdapter . getItem ( position ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġintent . putExtra (" location ", Ġitem ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġactivity ?. set Result ( Activity . RESULT _ OK , Ġintent ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġactivity ?. finish () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}) ĊĊĊĠĠĠĠĠĠĠ Ġ// åĪĽå»º poi æ£Ģ ç´¢ å®ŀä¾ĭ ĊĠĠĠĠĠĠĠ Ġpo i Search Ġ= ĠPo i Search . newInstance () ĊĠĠĠĠĠĠĠ Ġ// åĪĽå»º poi çĽĳåĲ¬ èĢħ ĊĠĠĠĠĠĠĠ Ġval Ġpo i Listener Ġ= Ġobject Ġ: ĠOn Get Poi SearchResult Listener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Get Poi Result ( result : ĠPo i Result ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( result Ġ== Ġnull Ġ|| Ġresult . error Ġ== ĠSearch Result . ERROR NO . RESULT _ NOT _ FOUND ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Load Index Ġ= Ġ 0 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠToast . makeText ( mContext , Ġ" æľª æī¾åĪ° ç»ĵæŀľ ", ĠToast . LENGTH _ LONG ). show () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( result . error Ġ== ĠSearch Result . ERROR NO . NO _ ERROR ) Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġèİ·åıĸ poi ç»ĵæŀľ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġm Poi List Ġ= Ġresult . all Poi ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpo i ListAdapter . set New Instance ( m Poi List ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( result . error Ġ== ĠSearch Result . ERROR NO . AM BIG UO US _ KEYWORD ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġå½ĵ è¾ĵåħ¥ åħ³éĶ®åŃĹ åľ¨ æľ¬ å¸Ĥ æ²¡æľī æī¾åĪ° ï¼Į ä½Ĩ åľ¨ åħ¶ä»ĸ åŁİ å¸Ĥ æī¾åĪ° æĹ¶ ï¼Į è¿ĶåĽŀ åĮħåĲ« è¯¥ åħ³éĶ®åŃĹ ä¿¡æģ¯ çļĦ åŁİ å¸Ĥ åĪĹè¡¨ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġstr Info Ġ= Ġ" åľ¨ " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( city Info Ġin Ġresult . suggest City List ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstr Info Ġ+= Ġcity Info . city ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstr Info Ġ+= Ġ"," ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstr Info Ġ+= Ġ" æī¾åĪ° ç»ĵæŀľ " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠToast . makeText ( mContext , Ġstr Info , ĠToast . LENGTH _ LONG ). show () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Get Poi Detail Result ( poi Detail Result : ĠPo i Detail Result ) Ġ{} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Get Poi Detail Result ( poi Detail SearchResult : ĠPo i Detail SearchResult ) Ġ{} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Get Poi In door Result ( poi In door Result : ĠPo i In door Result ) Ġ{} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ// è®¾ç½® poi çĽĳåĲ¬ èĢħ è¯¥ æĸ¹æ³ķ è¦ģ åħĪ äºİ æ£Ģ ç´¢ æĸ¹æ³ķ search Near by ( Poi Near by Search Option ) åīį è°ĥçĶ¨ ï¼Į åĲ¦åĪĻ ä¼ļ åľ¨ æŁĲ äºĽ åľºæĻ¯ åĩºçİ° æĭ¿ ä¸įåĪ° åĽŀè°ĥ ç»ĵæŀľ çļĦ æĥħåĨµ ĊĠĠĠĠĠĠĠ Ġpo i Search ?. setOn Get Poi SearchResult Listener ( poi Listener ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġsearch ( key : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġ// Ġåıĳ èµ· è¯·æ±Ĥ ĊĠĠĠĠĠĠĠ Ġif Ġ( city Str Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġoption Ġ= ĠPo i City Search Option () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. city ( city Str ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. keyword ( key ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. pageNum ( m Load Index ) Ġ// ĠåĪĨ é¡µ ç¼ĸåı· ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. city Limit ( false ) Ġ// åĮºåŁŁ æķ°æį® åı ¬ åĽŀ éĻĲåĪ¶ ä¸º true æĹ¶ ï¼Į ä»ħ åı ¬ åĽŀ city å¯¹åºĶ åĮºåŁŁ åĨħ æķ°æį® ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. scope ( 2 ) Ġ// æ£Ģ ç´¢ ç»ĵæŀľ è¯¦ç»Ĩ ç¨ĭ åº¦ ï¼ļ åıĸ åĢ¼ä¸º 1 ĠæĪĸ ç©º ï¼Į åĪĻ è¿ĶåĽŀ åŁºæľ¬ ä¿¡æģ¯ ï¼Ľ åıĸ åĢ¼ä¸º 2 ï¼Į è¿ĶåĽŀ æ£Ģ ç´¢ PO I è¯¦ç»Ĩ ä¿¡æģ¯ ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġpo i Search ?. search In City ( option ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset City ( city : ĠString ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġcity Str Ġ= Ġcity ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġclear Search () Ġ{ ĊĊĠĠĠ Ġ} Ċ }