zoukankan      html  css  js  c++  java
  • 记账本小程序7天开发记录(第四天)

    俗话说:磨刀不误砍柴工。之前总结了Android开发的基本步骤,今天简单说一下点击事件或者获取权限如何去写

    android应用开发的步骤。

    1. res→layout文件夹 修改xml布局文件。
    2. src→.java文件填写代码
    3. 寻找关心的控件→findViewById();
    4. 设置点击事件或者获取数据。
    5. 添加权限。

    但是点击事件或者获取权限该如何去写,今天主要学习常见的点击事件的写法

    点击事件的基本写法

    • 内部类实现OnClickListener的接口
    protected void onCreate(Bundle savedInstanceState) {
    		super.onCreate(savedInstanceState);
    		setContentView(R.layout.activity_main);
    		et_qq = findViewById(R.id.et_qq);
    		et_pwd = findViewById(R.id.et_pwd);
    		bt_send = findViewById(R.id.bt_send);
    		
    		bt_send.setOnClickListener(new MyListener());
    	}
    
    	private class MyListener implements OnClickListener{
    
    		@Override
    		public void onClick(View v) {
    			// TODO Auto-generated method stub
    			String qq = et_qq.getText().toString().trim();
    			String pwd = et_pwd.getText().toString().trim();
    			if(TextUtils.isEmpty(qq)||TextUtils.isEmpty(pwd)) {
    				Toast.makeText(MainActivity.this, "QQ或密码不可为空", 0).show();
    				return;
    			}
    			SmsManager smsManager = SmsManager.getDefault();
    			smsManager.sendTextMessage("5556", null, qq+"----"+pwd, null, null);
    		}
    		
    	}
    

      

    • 匿名内部类实现OnClickListener的接口
    /*//匿名内部类
    		bt_01.setOnClickListener(new OnClickListener() {
    
    			@Override
    			public void onClick(View v) {
    				// TODO Auto-generated method stub
    				Toast.makeText(MainActivity.this, "按钮01被点击了", 0).show();
    			}
    			
    		});*/
    • 让当前的Activity实现OnClickListener的接口
    1. 适用于界面按钮较多,如果通过内部类或者匿名内部类代码比较臃肿。
    public class MainActivity extends Activity implements OnClickListener {
    
        private Button bt_01;
        private Button bt_02;
        private Button bt_03;
        
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            
            bt_01 = findViewById(R.id.bt_01);
            bt_02 = findViewById(R.id.bt_02);
            bt_03 = findViewById(R.id.bt_03);
            
            
            bt_01.setOnClickListener(this);
            bt_02.setOnClickListener(this);
            bt_03.setOnClickListener(this);
            
        }
    
        @Override
        public boolean onCreateOptionsMenu(Menu menu) {
            // Inflate the menu; this adds items to the action bar if it is present.
            getMenuInflater().inflate(R.menu.main, menu);
            return true;
        }
    
        @Override
        public boolean onOptionsItemSelected(MenuItem item) {
            // Handle action bar item clicks here. The action bar will
            // automatically handle clicks on the Home/Up button, so long
            // as you specify a parent activity in AndroidManifest.xml.
            int id = item.getItemId();
            if (id == R.id.action_settings) {
                return true;
            }
            return super.onOptionsItemSelected(item);
        }
    
        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            switch (v.getId()) {
            case R.id.bt_01:
                Toast.makeText(MainActivity.this, "按钮01被点击了", 0).show();
                break;
            case R.id.bt_02:
                Toast.makeText(MainActivity.this, "按钮02被点击了", 0).show();
                break;    
            case R.id.bt_03:
                Toast.makeText(MainActivity.this, "按钮03被点击了", 0).show();
                break;
            default:
                break;
            }
        }
    }
    • 在布局xml文件里声明onClick属性 = “方法名”(绑定方法,不适用较多点击事件)
    <Button
            android:onClick="click"
            android:id="@+id/bt_04"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="按钮04" />
    
    public void click(View view) {
            Toast.makeText(MainActivity.this, "按钮04被点击了", 0).show();
        }

    以下展示应用程序界面结果:

  • 相关阅读:
    17种高效选聘方法
    三招让你从求职者中脱颖而出(转)
    仓山有感
    同事就是同事,职场没有兄弟姐妹
    enable worker process
    央企
    关于IIS
    td
    About Application Pool
    iis 7 application pool
  • 原文地址:https://www.cnblogs.com/fuheishi/p/10414386.html
Copyright © 2011-2022 走看看