为了账号安全,请及时绑定邮箱和手机立即绑定

想问下为什么我设置listview的监听器时会出错?

lv.setOnItemClickListener(this);

正在回答

代码语言

4 回答

package com.abc.listviewtest;


import java.util.ArrayList;

import java.util.HashMap;

import java.util.List;

import java.util.Map;


import android.app.Activity;

import android.os.Bundle;

import android.view.Menu;

import android.view.MenuItem;

import android.view.ScaleGestureDetector.OnScaleGestureListener;

import android.view.View;

import android.widget.AbsListView;

import android.widget.AbsListView.OnScrollListener;

import android.widget.AdapterView;

import android.widget.AdapterView.OnItemClickListener;

import android.widget.ArrayAdapter;

import android.widget.ListView;

import android.widget.SimpleAdapter;

import android.widget.Toast;


public class MainActivity extends Activity implements OnItemClickListener,OnScrollListener{

private ListView listView;

private ArrayAdapter<String>arr_adapter;

private SimpleAdapter simp_adapter;

private List<Map<String,Object>>dataList;


@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

String[]arr_data={"优信拍","优信拍1","优信拍2","优信拍3","优信拍4","优信拍5","优信拍6","优信拍7",

"优信拍8","优信拍9","优信拍10","优信拍11","优信拍12"};

dataList=new ArrayList<Map<String,Object>>();

ListView listView=(ListView) findViewById(R.id.listView);

arr_adapter=new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, arr_data);

simp_adapter=new SimpleAdapter(this, getData(), R.layout.item, new String[]{"pic","text"}, new int[]{R.id.pic,R.id.text});

// listView.setAdapter(arr_adapter);

listView.setAdapter(simp_adapter);

listView.setOnItemClickListener(this);

listView.setOnScrollListener(this);

}


private List<Map<String,Object>> getData(){

for (int i=0;i<20;i++){

Map<String,Object>map=new HashMap<String, Object>();

map.put("pic",R.drawable.ic_launcher);

map.put("text","优信拍"+i);

dataList.add(map);

}

return dataList;

}


@Override

public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {

// TODO Auto-generated method stub

}


@Override

public void onScrollStateChanged(AbsListView view, int scrollState) {

// TODO Auto-generated method stub

}


@Override

public void onItemClick(AdapterView<?>parent, View view, int position, long id) {

// TODO Auto-generated method stub

String text=listView.getItemAtPosition(position).toString();

Toast.makeText(MainActivity.this,"position="+position+"text="+text, Toast.LENGTH_SHORT).show();

}

}


0 回复 有任何疑惑可以回复我~
#1

OPENCLUB

真机测试点击后退出,为什么?
2017-02-15 回复 有任何疑惑可以回复我~

我的也出错了,看了一下异常,是int转String的时候出错,不得不说,0基础学这个根本不太可能


0 回复 有任何疑惑可以回复我~

我这个MainActivity继承了这个接口,所以这个实例lv就是声明接口吧

0 回复 有任何疑惑可以回复我~

没有声明接口?

0 回复 有任何疑惑可以回复我~
#1

余kobe 提问者

我这个MainActivity继承了这个接口,所以这个实例lv就是声明接口吧
2015-03-23 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Android攻城狮的第二门课(第1季)
  • 参与学习       111157    人
  • 解答问题       1457    个

本课程由浅入深地带您学会Android的常用控件的开发和使用

进入课程

想问下为什么我设置listview的监听器时会出错?

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号