• 基础知识:设置Android按钮与绑定事件

    OnClickListener
    服务器君一共花费 55.011 ms 进行了 4 次数据库查询,努力地为您提供了这个页面。
    广告很萌的

    在前面 向应用添加一个新的Activity,我们使用了按钮,点击按钮进入一个新的 Activity。这里简单总结一下按钮在 Android 的使用。

    设计一个按钮很简单,在 IDE 里一般都有图形界面,你也可以自己在 xml 里自己编写,比如:

    <Button
    	android:id="@+id/nowamagicbtn"
    	android:layout_width="wrap_content"
    	android:layout_height="wrap_content"
    	android:text="前往PaintingActivity" />
    

    接下来是关键的,给按钮绑定事件的几种方法。

    第一种:

    private Button button;
    
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    	super.onCreate(savedInstanceState);
    	setContentView(R.layout.activity_main);
    	
    	button = (Button)findViewById(R.id.nowamagicbtn);
    
    	button.setOnClickListener(new OnClickListener(){
    
    		@Override
    		public void onClick(View v) {
    			// TODO Auto-generated method stub
    			Intent intent = new Intent();
    			intent.setClass(MainActivity.this, PaintingActivity.class);
    			startActivity(intent);
    		}
    		
    	});
    }
    

    第二种:

    private Button button;
    
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    	super.onCreate(savedInstanceState);
    	setContentView(R.layout.activity_main);
    	
    	button = (Button)findViewById(R.id.nowamagicbtn);
    	button.setOnClickListener(new ButtonListener());
    }
    
    class ButtonListener implements OnClickListener{
    
    	@Override
    	public void onClick(View v) {
    		if( v.getId() == R.id.nowamagicbtn){
    			Intent intent = new Intent();
    			intent.setClass(MainActivity.this, PaintingActivity.class);
    			startActivity(intent);
    		}
    	}
    }
    

    第三种:

    private Button button;
    
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    	super.onCreate(savedInstanceState);
    	setContentView(R.layout.activity_main);
    	
    	button = (Button)findViewById(R.id.nowamagicbtn);
    	button.setOnClickListener(new ButtonListener());
    }
    
    class ButtonListener implements OnClickListener{
    
    	@Override
    	public void onClick(View v) {
    		// TODO Auto-generated method stub
    		Intent intent = new Intent();
    		intent.setClass(MainActivity.this, PaintingActivity.class);
    		startActivity(intent);
    	}
    }
    

    其实都是大同小异,都是继承 OnClickListener,然后重写其 onClick 方法。总结一下方便后来人使用。

更多 推荐条目

Welcome to NowaMagic Academy!

现代魔法 推荐于 2013-02-27 10:23   

本章最新发布
随机专题
  1. [移动开发] Android 网络通信框架Volley 1 个条目
  2. [JavaScript程序设计] Web实时通信技术名词解析 5 个条目
  3. [移动开发] Content Provider内容提供者 3 个条目
  4. [Linux操作系统] 基本 Linux Shell 命令 2 个条目
  5. [移动开发] Activity 初步知识 2 个条目
  6. [软件工程与项目管理] 开始了解Git 5 个条目
  7. [智力开发与知识管理] 整体性学习步骤 9 个条目
  8. [数据库技术] 数据库范式篇 5 个条目
  9. [搜索引擎优化] 与百度权重有关的信息 2 个条目
  10. [PHP程序设计] 声明式编程范式 12 个条目
  11. [软件工程与项目管理] 浏览器的HTML解析器 8 个条目
  12. [Python程序设计] Python数据类型 11 个条目
窗口 -- [协会]