两种常用的监听器 OnItemListener,OnScrollListener

适配器:是图形界面和数据源之间的交互
监听器:是用户和图形界面之间的(其实监听器是一个可以实现的接口)

OnItemListener 监听事件点击的监听器

OnScrollListener是监听事件变化的监听器


OnItemListener 监听事件点击的监听器:

  1. 首先继承接口
  2. 重载方法
  3. 声明是对于哪一个布局对象的监听事件listvw.setOnItemClickListener(this);
  4. 实现具体的方法
    public void onItemClick(AdapterView<?> parent, View view, int position,
    long id) {
    // TODO Auto-generated method stub
    String text = listvw.getItemAtPosition(position)+ "";
    Toast.makeText(this, "position" + position+ " Text"+ text , Toast.LENGTH_SHORT).show();
    }

    1. listvw.getItemAtPosition(position)+ ""; 监听的是点击 处的位置信息,
    2. String text = listvw.getItemAtPosition(position)+ ""; 转化成了字符串的信息
      7.Toast.makeText(this, "position" + position+ " Text"+ text , Toast.LENGTH_SHORT).show();用吐司的方式在屏幕上显示这些信息,第二个参数是显示的内容,第三个是显示的时长。
    @Override
    public void onItemClick(AdapterView<?> parent, View view, int position,
            long id) {
        // TODO Auto-generated method stub
         String text = listvw.getItemAtPosition(position)+ "";
         Toast.makeText(this, "position" + position+ " Text"+ text , Toast.LENGTH_SHORT).show(); 
    }
public class MainActivity extends Activity implements OnItemClickListener,OnScrollListener{
    private ListView listvw;
    private ArrayAdapter<String>arr_adapter;
    private SimpleAdapter sim_adapter;
    private List<Map<String,Object>> dal;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        listvw = findViewById(R.id.listView);

        /* 1.新建一个适配器
         *   包含的三个参数(上下文,当前ListView所加载列表项所对应的布局文件,数据源)
         * 2.适配器去加载数据源
         * 3.使用视图(ListView)加载适配器
         * */
        /* context:上下文 
         * resource: 指的是布局的文件id。
         * data : 有map所组成的一个键值对,每个map对应的是列表中的一行,键值在from中一定是需要包含的
         * from :记录键名称
         * to:绑定数据视图中的id,与from有对应对的关系
         * */
        String[] arr_dataStrings = {"mooc1","mooc2","mooc3","mooc4"};
        dal = new ArrayList<Map<String,Object>>();
        arr_adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, arr_dataStrings);
        sim_adapter = new SimpleAdapter(this, getData(), R.layout.itrm, new String[]{"pic","text"}, new int[]{R.id.imageView1,R.id.textView1});
        //listvw.setAdapter(arr_adapter);
        listvw.setAdapter(sim_adapter);
        listvw.setOnItemClickListener(this);
        listvw.setOnScrollListener(this);
    }

sim_adapter.notifyDataSetChanged();

搭载的动态刷新功能

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值