AndroidStudio_笔记_day1

  • content 上下文。Context是维持android各组件能够正常工作的一个核心功能类。在android中,Activity.instance可以获取activity,android不像java程序,android是基于组件的应用设计模式,组件的运行需要一个完整的android工程环境,所以new一下是不能创建实体的,而是要有它们各自的上下文环境context

  • AndroidMainfest.xml是Android应用的入口,能声明程序中的Activities, ContentProviders, Services, 和Intent Receivers,还能指定permissions和instrumentation(安全控制和测试)。

  • Activity文件需要继承AppCompatActivity,用到按钮监听器需要实现接口OnClickListener,按钮监听器设置:findViewById(R.id.bt_date1).setOnClickListener(this); 重写onClick方法,写入按钮响应逻辑。

  • LinearLayout 线性布局 ,orientation=“horizontal”/“vertical”,

  • protected修饰的成员只能被同一个package或者不同package中该类的子类访问 。 private,用于修饰类、属性和方法,只能自己使用,其他类不能访问,private可以修饰内部类。

  • ImageView 图像视图

  • 提醒对话框AlertDialog, 信息提醒Toast。

    if(rb_verification.isChecked()) {
                mVerifyCode = String.format("%06d", (int)(Math.random()*1000000%1000000));//产生随机验证码
                AlertDialog.Builder builder = new AlertDialog.Builder(this);
                builder.setTitle("请记住验证码");
                builder.setMessage("手机号"+phone+"验证码:"+mVerifyCode);
                builder.setPositiveButton("好的",null);
                AlertDialog alert = builder.create();
                alert.show();
            }
    
  • Toast.makeText(mContext, “您点击了广告图片”, Toast.LENGTH_LONG).show(); 第一个参数:当前的上下文环境。可用getApplicationContext()或this。第二个参数:要显示的字符串。也可是R.string中字符串ID。第三个参数:显示的时间长短。Toast默认的有两个LENGTH_LONG(长)和LENGTH_SHORT(短),也可以使用毫秒如2000ms

  • RadioGroup单选按钮布局,设置同LinearLayout。RadioButton单选按钮。

    
    public class LoginActivity extends AppCompatActivity implements View.OnClickListener {
    
        private RadioGroup rg_login;
        private RadioButton rb_password;
        private RadioButton rb_verification;
        private TextView tv_password;
        private EditText et_password;
        private Button but_forget;
    
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_login);
    
            rg_login = (RadioGroup) findViewById(R.id.rg_login);
            rb_password = (RadioButton) findViewById(R.id.rb_password);
            rb_verification = (RadioButton) findViewById(R.id.rb_verification);
            tv_password = (TextView) findViewById(R.id.tv_password);
            et_password = (EditText) findViewById(R.id.et_password);
            but_forget = (Button) findViewById(R.id.but_forget);
    
            rg_login.setOnCheckedChangeListener(new RadioListener());//设置RadioGroup监听器
            
        }
        private class RadioListener implements RadioGroup.OnCheckedChangeListener {
            @Override
            public void onCheckedChanged(RadioGroup group, @IdRes int checkedId) {
                if(checkedId == R.id.rb_password) {
                    tv_password.setText("登录密码:");
                    but_forget.setText("忘记密码");
                    et_password.setHint("请输入密码");
                }
                else if(checkedId == R.id.rb_verification) {
                    tv_password.setText("验证码:");
                    but_forget.setText("获取验证码");
                    et_password.setHint("请输入验证码");
                }
            }
        }
        @Override
        public void onClick(View v) {
        }
    }
    
    
  • 下拉框Spinner

    protected void onCreate(Bundle saveInstanceState) {
        ......
    	ArrayAdapter<String> starAdapter = new ArrayAdapter<String>(this,
    				R.layout.item_select, starArray);//声明数组适配器,其中item_select为选择后填入spinner的样式
    		starAdapter.setDropDownViewResource(R.layout.item_dropdown);//设置数组适配器布局样式
    		Spinner sp = (Spinner) findViewById(R.id.sp_dialog);//获取布局文件的下拉框
    		sp.setPrompt("请选择行星");//标题
    		sp.setAdapter(starAdapter);//设置适配器
    		sp.setSelection(0);//设置默认显示
    		sp.setOnItemSelectedListener(new MySelectedListener());//设置选择监听器,一旦选择就触发onItemSelected方法
    }
    	private String[] starArray = {"水星", "金星", "地球"};//下拉框的文本数组
    	class MySelectedListener implements OnItemSelectedListener { //定义选择监听器	
    		public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
    			Toast.makeText(SpinnerDialogActivity.this, "您选择的是"+starArray[arg2], Toast.LENGTH_LONG).show();//arg2代表选择项的序号
    		}
    		public void onNothingSelected(AdapterView<?> arg0) {
    		}
    	}
    
  • Adapter适配器,用来把数据映射到视图的中介。原理:bean包中的实体类将实体信息打包成List对象(如:goodsList、plantsList),适配器给每一个List对象分配一个专门的视图

  • ListView 列表视图

  • GridView 网格视图 , BaseAdapter基本适配器

  • ViewPager 翻页视图 , PagerTabStrip选项卡标题栏

  • FArmeLayout 碎片视图 , fragment 碎片 , FragmentStatePagerAdapter碎片适配器

  • Broadcast 广播

  • AlarmManager 定时器

  • TableLayout表格布局

  • 文本文件读写FileOutputStream、FileInputStream

比较Activity与service,数据存储,摄像头,网络通讯,

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值