欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Android之ListView监听事件(10) 博客分类: Android初步 安卓;Listview事件监听 

程序员文章站 2024-03-11 21:06:43
...

                                 上节课我们小试牛刀了美团美食列表,当我们点击美团时列表都会跳转到另一个Activity中,就是另一个页面去看详细信息,这里用到了非常重要的两点,一点是OnItemClickListener和Intent,第一个简单明了就是组件的点击事件,第二个是页面跳转常用的,这里我们先讲这一种用法。

首先我们有一个MainActivity.class,之后我们定义一个跳转后的页面例如:bingguo.class,跳转的代码是:

Intent intent=new Intent();
			intent.setClass(MainActivity.this, bingguo.class);
			MainActivity.this.startActivity(intent);

 

然后我们给bingguo.class绑定布局管理器。

public class bingguo extends Activity{
	
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.bingguo);
		
		}

}

 

之后定义你要显示xml布局。为了简单起见这里就不在定义bingguo的配置文件,读者可以自行创意

然后就是关键的时间监听机制。

	this.datalist.setOnItemClickListener(new ListViewListener());
	}
	private class ListViewListener implements OnItemClickListener{

		@Override
		public void onItemClick(AdapterView<?> arg0, View v, int position,
				long id) {
			Map<String,String> map=(Map<String,String>)MainActivity.this.simpleadapter.getItem(position);
			String title=map.get("title");
			if(title.equals("冰果彩虹")){
			Intent intent=new Intent();
			intent.setClass(MainActivity.this, bingguo.class);
			MainActivity.this.startActivity(intent);
			
			}

 

在之前代码中加上这几句话,你就会发现你的程序已经捕捉到了冰果彩虹卖家的信息,我们来运行试试:

 


Android之ListView监听事件(10)
            
    
    博客分类: Android初步 安卓;Listview事件监听 

接下来我们定义OnItemLongClickListener也就是长按按钮,这里我们要学到对话框,在代码中加入 
this.datalist.setOnItemLongClickListener(new delete();监听器再加入事件处理。

private class delete implements OnItemLongClickListener{

		@Override
		public boolean onItemLongClick(AdapterView<?> arg0, View arg1,
				int position, long arg3) {
		    Map<String,String> map=(Map<String,String>)MainActivity.this.simpleadapter.getItem(position);
			String title=map.get("title");
			
			
				
			new AlertDialog.Builder(MainActivity.this).setIcon(R.drawable.warm).setTitle(title).setMessage("确定要删除吗?")
			 .setPositiveButton("确定",new DialogInterface.OnClickListener(){
			 @Override
			 public void onClick(DialogInterface dialog, int which) {
			 //在这里添加事件
				 
				 Toast toast = Toast.makeText(MainActivity.this, "已删除!", Toast.LENGTH_SHORT); 
				 toast.show(); 
			 }
			 
			 }).setNeutralButton("查看详情", null).setNegativeButton("取消",new DialogInterface.OnClickListener() {
			 @Override
			 public void onClick(DialogInterface dialog, int which) {
			 dialog.dismiss();
			 }
			 }).create().show();

			
			return false;
		}
		
	}

加入弹出删除对话框功能,可以自己定义图标,按钮。效果如下:

 
Android之ListView监听事件(10)
            
    
    博客分类: Android初步 安卓;Listview事件监听 
 

 

 

  • Android之ListView监听事件(10)
            
    
    博客分类: Android初步 安卓;Listview事件监听 
  • 大小: 225.8 KB
  • Android之ListView监听事件(10)
            
    
    博客分类: Android初步 安卓;Listview事件监听 
  • 大小: 35.6 KB
  • Android之ListView监听事件(10)
            
    
    博客分类: Android初步 安卓;Listview事件监听 
  • 大小: 140.5 KB