【Android入门 四】listView简单说明

本文详细介绍了适配器在ListView中的应用,包括如何加载布局、选择适配器、增加监听器以及理解上下文概念。通过示例代码,展示了如何使用ArrayAdapter与ListView结合实现功能丰富的UI展示。

ListAdapter是接口,里面含有许多抽象方法。叫适配器的原因是,需要接口适应什么需求,就写相应的方法(这就是适配器)。

listView的大体思路:

加载布局

找到合适的适配器,声明对象,并加载。

在listView上增加监听器

//context的理解,一个activity对应一个上下文配置环境,即activity.main的作用是取得该activity对应的context。

//调试新方法,类似于打印的toast。

示例代码:

<span style="font-family:Microsoft YaHei;font-size:18px;">package com.study.demo;

import java.util.ArrayList;

import android.app.Activity;
import android.content.Intent;
import android.content.res.Resources;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ArrayAdapter;
import android.widget.ListAdapter;
import android.widget.ListView;
import android.widget.Toast;

public class MainActivity extends Activity {
	protected ListView lv;
	private String[] mainOptions;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		mainOptions = getResources().getStringArray(R.array.testarray);
		lv = (ListView) findViewById(R.id.lv);
		ListAdapter adapter = new ArrayAdapter<String>(MainActivity.this,
				android.R.layout.simple_list_item_1, mainOptions);
		lv.setAdapter(adapter);
		lv.setOnItemClickListener(new OnItemClickListener() {

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

				String option = mainOptions[position];
				Toast.makeText(MainActivity.this, "您点击的是" + option, 1000)
						.show();

				if (position == 0) {
					Intent intent0 = new Intent(MainActivity.this, NsdActivity.class);
					startActivity(intent0);
				}else if (position == 1) {
					Intent intent1 = new Intent(MainActivity.this, ImgActivity.class);
					startActivity(intent1);
				}else if (position == 2) {
					Intent intent2 = new Intent(MainActivity.this, MenuActivity.class);
					startActivity(intent2);
				}else if (position == 3) {
					Intent intent3 = new Intent(MainActivity.this, MapActivity.class);
					startActivity(intent3);
				}else if (position == 4) {
					Intent intent4 = new Intent(MainActivity.this, SimActivity.class);
					startActivity(intent4);
				}

			}

		});

	}
}
</span>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值