安卓基础控件小结

目录

1.布局

2.控件

基础控件:

TextView:

EditText:

inmageView

Button(继承于TextView)

点击事件:

内部类

匿名内部类

Activity实现OnClickLitener

RadioButton:

inmagebutton:

checkbox:

高级控件:

scrollview:信息滑动


1.布局

  • 线性布局(LinearLayout):

  • 相对布局(RelativeLayout):

2.控件

基础控件:

  • TextView:

    • 给文本设置边框

    • 带图片的文本框

  • EditText:

    • 常用属性

      • hint:输入框输入提示,点击后消失

      • inputtype:点击输入框时,弹出的键盘输入类型

  • inmageView

    • src:相当于引用图片资源,引出scaletype

  • Button(继承于TextView)

    • 常用属性

      • shape:资源文件,

      • statedrawableList:给按钮设置两个背景 色,或图

    • 点击事件:

      • 内部类

        • 具体实现过程可看前一章

          • 匿名内部类

          • Activity实现OnClickLitener

  • RadioButton:

    • 在多选情况下一般跟radiogroup一起使用

    • RadioGroup 默认水平,可以通过 orientation 来控制排列方式,水平还是垂直。

    • 他的点击事件声明到radiogroup

  • inmagebutton:

  • checkbox:

高级控件:

  • scrollview:信息滑动

  • 一般跟线性布局一起使用,因为scrollview的特性是,有且只有一个子view(布局)可以是(LinearLayout或者是RelativeLayout),

  • scrollview最大的特点,如果view没有子view的高度高,就不能滑动

  • 默认垂直滑动,想要水平滑动要使用Scrollvew

  • Activity

  • Service

  • Activity(页面之间的跳转):意图

    • Intent intent=new Intent  (Mainactivity.this,Minactivity.class)//定义从哪到哪
      startactivity(intent)

    • ProgressBar:进度条

      • 进度条是UI界面中一种非常实用的组件,通常用于向用户像是某个耗时操作完成的百分比。进度条可动态地显示进度,因此避免长时间地执行某个操作时,让用户感觉程序失去了响应,从而更好地提高用户界面的友好性
      • 进度条可大致分为两类,水平进度条和环形进度条
    • 使用‘style’分为两类

      • style属性:

        @android:style/Widget.ProgressBar.Horizontal:水平进度条

        @android:style/Widget.ProgressBar.Inverse:普通大小的进度条

        @android:style/Widget.ProgressBar.Large:大环形进度条

        @android:style/Widget.ProgressBar.Large.Inverse:大环形进度条

        @android:style/Widget.ProgressBar.Small:小环形进度条

        @android:style/Widget.ProgressBar.Small.Inverse:小环形进度条

    • 水平进度条

      • @android:style/Widget.ProgressBar.Horizontal

    •  
      • 环形进度条:

      • @android:style/Widget.ProgressBar.Large:

  • popupWindows:弹出框

    • PopupWindow,顾名思义弹窗.PopupWindow是与AlertDialog在形式上类似的弹窗功能,都是为了在activity最上层显示一个弹窗.但是区别是PopupWindow可以自定义出现的位置,并且可以添加入自己需要的View或者导入自己写好的xml布局                

    • 可以加载一个view也可以加载自定义的弹窗文件,强调弹窗,强调互动性

    • 可以加载一个view,也可以导入自己定义好的xml文件

    • 使用的方式:

      • //先定义一个view,然后直接在代码上new一个vie,或者将xml映射为view
        
        //实例化一个PopupWindow,将View在实例化作为参数传入
        
        //配置PopupWindow参数
        
  • Spinner

    • 设置Spinner的内容
      • setContentView(View contentView)
    • 设置Spinner 的属性
      • 宽:setWidth(int width)
      • 高setHeight(int height)
    • 设置背景
      • setBackgroundDrawable(Drawable background)

使用案例:

final PopupWindow popupWindow = new PopupWindow(textView,300,400);
popupWindow.setOutsideTouchable(true);
popupWindow.setBackgroundDrawable(getResources().getDrawable(R.drawable.ic\_launcher\_background));//设置背景

PinnerButton = (Button)findViewById(R.id.test_btn);


PinnerButton .setOnClickListener(new View.OnClickListener() {
    @Override 
    public void onClick(View v) {
        popupWindow.showAsDropDown(mTestButton);
    }
});
40514
  •      设置点击文本区域外部退出
    •    setOutsideTouchable(boolean touchable)
  • setFocusable(boolean focusable)
    • 这个方法除了一般的聚焦选中的功能崴还有一个重要的地方
      • 设置聚焦后,当用户按下导航栏的返回键后,不会直接退出当前的页面(Activity)而是会先退出当前的PopupWindow,然后再退出页面
    • 设置弹出的动画的高度
      • setElevation(float elevation)
        • 这个方法可以设置弹出动画的其实位置
        • 需要注意的是:以下几点
          • // 传入 AnchorView ,锚点实际为 Window
            // Gravity.TOP 在该锚点的正上方
            // Gravity.LEFT 在屏幕左侧
            // Gravity.NO_GRAVITY,在屏幕左上角
            // x 为坐标系 x轴方向的偏移量,左负右正
            // y 为坐标系 y轴方向的偏移量,上负下正
            对应的代码为:
          • popupWindow.showAtLocation(view, Gravity.TOP, 0, y);


            popupWindow.showAtLocation(view, Gravity.NO_GRAVITY,x, y);


            popupWindow.showAtLocation(view, Gravity.TOP, 0, y);
             
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值