做高德导航时候一个关于listview点击的问题

devin_lxs 2015-07-23 08:13:38
每次item点击都会停止与你系那个
代码如下:
ublic class searchMode extends Activity implements OnPoiSearchListener{
private Button mbtn_ok,mbtn_back;//返回和搜索按钮
private ListView pListView;
private String city_curr,addr_curr;
private EditText edit_key;
private PoiSearch search;
private PoiSearch.Query query;//返回查询的类
private String keyword;

protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.searchmode);
init();
Onclick();
}

private void init() {
// TODO Auto-generated method stub
String Activityfrom= getIntent().getStringExtra("ActivityFrom");
if(Activityfrom!=null){
if(Activityfrom.equals("map_main")){ //跳转来自 main
city_curr= getIntent().getStringExtra("curr_city");
addr_curr= getIntent().getStringExtra("curr_addr");
}
}
mbtn_ok=(Button) findViewById(R.id.ss_search_start);
mbtn_back=(Button) findViewById(R.id.ss_search_back);
pListView=(ListView) findViewById(R.id.listViewResult);
edit_key=(EditText) findViewById(R.id.ss_search_edit);
}

private void Onclick() {
// TODO Auto-generated method stub
mbtn_ok.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
keyword = edit_key.getText().toString();
if(keyword.equals("")){
Toast.makeText(searchMode.this,"请输入地址!", Toast.LENGTH_SHORT).show();
}
else{
search(keyword);
}
}

});
mbtn_back.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
finish();
}
});
pListView.setOnItemClickListener(new OnItemClickListener() {

@Override
public void onItemClick(AdapterView<?> parent, View view,int position, long id) {
PoiItem poi=(PoiItem)parent.getAdapter().getItem(position);//这里问题
double lon = poi.getLatLonPoint().getLongitude();
}
});
}

private void search(String keyword) {
// TODO Auto-generated method stub
query = new Query(keyword, null, city_curr); //搜索定位城市
query.setPageSize(10);
query.setPageNum(1);
//查询兴趣点
search = new PoiSearch(this, query);
search.setOnPoiSearchListener(this);
search.searchPOIAsyn();
}
@Override
public void onPoiItemDetailSearched(PoiItemDetail arg0, int arg1) {//setOnPoiSearchListener
// TODO Auto-generated method stub
System.out.println("onPoiItemDetailSearched调用了");
}

@Override
public void onPoiSearched(PoiResult poiResult, int rCode) {//setOnPoiSearchListener
// TODO Auto-generated method stub
System.out.println("onPoiSearched调用了"+poiResult+"------rCode"+rCode);
List<String> strs = new ArrayList<String>();
ArrayList<PoiItem> items = poiResult.getPois();
if (items != null && items.size() > 0) {
PoiItem item = null;
for (int i = 0, count = items.size(); i < count; i++) {
item = items.get(i);
strs.add(item.getTitle());
}
// 给ListView赋值,显示结果
ArrayAdapter<String> array = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, strs);
pListView.setAdapter(array);
}
}

}
...全文
175 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
StoneHui_ 2015-07-24
  • 打赏
  • 举报
回复
searchMode.java类81行, java.lang.String cannot be cast to com.amap.api.services.core.PoiItem,类转换异常,String不能转换成Poiltem
devin_lxs 2015-07-24
  • 打赏
  • 举报
回复
引用 1 楼 u014165119 的回复:
没看出来你要问什么,有错误log的话也贴上来
我想点击item时候获取里面的信息。下面是log 07-23 19:49:18.376: W/dalvikvm(15154): threadid=1: thread exiting with uncaught exception (group=0x4168ee18) 07-23 19:49:18.396: E/AndroidRuntime(15154): FATAL EXCEPTION: main 07-23 19:49:18.396: E/AndroidRuntime(15154): Process: com.pateo.SDLNavi, PID: 15154 07-23 19:49:18.396: E/AndroidRuntime(15154): java.lang.ClassCastException: java.lang.String cannot be cast to com.amap.api.services.core.PoiItem 07-23 19:49:18.396: E/AndroidRuntime(15154): at com.pateo.SDLNavi.searchMode.searchMode$3.onItemClick(searchMode.java:81) 07-23 19:49:18.396: E/AndroidRuntime(15154): at android.widget.AdapterView.performItemClick(AdapterView.java:299) 07-23 19:49:18.396: E/AndroidRuntime(15154): at android.widget.AbsListView.performItemClick(AbsListView.java:1276) 07-23 19:49:18.396: E/AndroidRuntime(15154): at android.widget.ListView.performItemClick(ListView.java:4450) 07-23 19:49:18.396: E/AndroidRuntime(15154): at android.widget.AbsListView$PerformClick.run(AbsListView.java:3168) 07-23 19:49:18.396: E/AndroidRuntime(15154): at android.widget.AbsListView$3.run(AbsListView.java:3919) 07-23 19:49:18.396: E/AndroidRuntime(15154): at android.os.Handler.handleCallback(Handler.java:733) 07-23 19:49:18.396: E/AndroidRuntime(15154): at android.os.Handler.dispatchMessage(Handler.java:95) 07-23 19:49:18.396: E/AndroidRuntime(15154): at android.os.Looper.loop(Looper.java:157) 07-23 19:49:18.396: E/AndroidRuntime(15154): at android.app.ActivityThread.main(ActivityThread.java:5872) 07-23 19:49:18.396: E/AndroidRuntime(15154): at java.lang.reflect.Method.invokeNative(Native Method) 07-23 19:49:18.396: E/AndroidRuntime(15154): at java.lang.reflect.Method.invoke(Method.java:515) 07-23 19:49:18.396: E/AndroidRuntime(15154): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1069) 07-23 19:49:18.396: E/AndroidRuntime(15154): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:885) 07-23 19:49:18.396: E/AndroidRuntime(15154): at dalvik.system.NativeStart.main(Native Method)
StoneHui_ 2015-07-24
  • 打赏
  • 举报
回复
没看出来你要问什么,有错误log的话也贴上来

80,337

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧