android视图的一些总结
2015-11-08 16:07
441 查看
先把要写的写下来,有时间再详写
1、有关weight和width/height优先度的问题
2、有关padding和margin的一问题:padding在父容器,margin在子容器可以实现相同的效果,但是依然有不同之处
3、有关父容器的gravity和oritation的区别:虽然都是对子控件的位置进行设置,oritation功能较少,仅仅垂直和水平,gravity功能则较多,中心,水平中心,垂直中心等
4、gravity和layout_gravity区别,以及相关的问题前者是对容器而言,后者是对本身而言
5、不同布局下部分属性失效的问题,如RelativeLayout下没有padding属性,还有相关问题如LinearLayout下选择layout_marginRight属性无效等问题
6、actionbar上添加button以外的控件等问题,比如actionbar上添加开关控件
----------------------------------------------------------------------------------------------------------------------------------------------------
(2015年11月19日16:18:56)
今天总结下spinner和scrollView,首先是spinner,要给这个下拉框设置选择事件容易,但要设置点击事件则需要自己处理,它本身没有带点击事件,咱们可以用触摸事件代替
让后就是scrollView,要在程序运行当中设置位置可以用如下方式
----------------------------------------------------------------------------------------------------------------------------------------------------------
(2015年11月23日15:35:47)
抽下时间说下第五个问题,之所以在linearLayout下layout_marginRight无效并不是真的无效,而是先后问题,在linearLayout的orientation设置为horizontal时,控件默认是从左向右排列的,layout_marginRight属性并不是绝对属性,而是指靠右的距离不小于这个值,这样理解就比较容易了
1、有关weight和width/height优先度的问题
2、有关padding和margin的一问题:padding在父容器,margin在子容器可以实现相同的效果,但是依然有不同之处
3、有关父容器的gravity和oritation的区别:虽然都是对子控件的位置进行设置,oritation功能较少,仅仅垂直和水平,gravity功能则较多,中心,水平中心,垂直中心等
4、gravity和layout_gravity区别,以及相关的问题前者是对容器而言,后者是对本身而言
5、不同布局下部分属性失效的问题,如RelativeLayout下没有padding属性,还有相关问题如LinearLayout下选择layout_marginRight属性无效等问题
6、actionbar上添加button以外的控件等问题,比如actionbar上添加开关控件
----------------------------------------------------------------------------------------------------------------------------------------------------
(2015年11月19日16:18:56)
今天总结下spinner和scrollView,首先是spinner,要给这个下拉框设置选择事件容易,但要设置点击事件则需要自己处理,它本身没有带点击事件,咱们可以用触摸事件代替
public class mOnTouchListener implements View.OnTouchListener{ @Override public boolean onTouch(View v, MotionEvent event) { case R.id.spinner_meals:{ switch (event.getAction()){ case MotionEvent.ACTION_DOWN: break; case MotionEvent.ACTION_MOVE: break; case MotionEvent.ACTION_UP: scrollView.smoothScrollTo(0, scrollViewMeasuredHeight - height); break; } break; } } return false; } }还有一点就是不用设置点击间隔,也就是不用防抖,因为当下拉框展开的时候是无法获取触摸事件的
让后就是scrollView,要在程序运行当中设置位置可以用如下方式
final int height=scrollView.getHeight();//显示部分 final int scrollViewMeasuredHeight=scrollView.getChildAt(0).getMeasuredHeight();//实际部分 final int scrollY=scrollView.getScrollY();//超出部分 Log.v("TrafficMng","view.getScrollY()="+scrollY); Log.v("TrafficMng","view.getHeight()="+height); Log.v("TrafficMng","view.getMeasuredHeight()="+scrollViewMeasuredHeight); scrollView.scrollTo(0,scrollViewMeasuredHeight-height);//滑到底scrollView还有几个方法,
scrollView.smoothScrollTo(0,10);//动画滑动 scrollView.smoothScrollBy(0,10); scrollView.scrollBy(0,10);//相对位置
----------------------------------------------------------------------------------------------------------------------------------------------------------
(2015年11月23日15:35:47)
抽下时间说下第五个问题,之所以在linearLayout下layout_marginRight无效并不是真的无效,而是先后问题,在linearLayout的orientation设置为horizontal时,控件默认是从左向右排列的,layout_marginRight属性并不是绝对属性,而是指靠右的距离不小于这个值,这样理解就比较容易了
相关文章推荐
- Android读书笔记-----自定义View(1)原理
- Android中的View
- Android SlideMenu基本属性介绍
- 在Windows下搭建Android开发环境
- android应用1之计算器
- 疗伤之设计模式
- Android M 部分API变动研究
- 解决win10 下android studio terminal无法输入的问题
- Android View的onTouchEvent和OnTouch区别
- IntentService学习笔记
- Android Activity与Service的交互方式
- Android中常用对话框
- Android使用限定符
- MTP in Android
- android多线程断点下载-带进度条和百分比进度显示
- Win7 PC无法识别android手机 / adb interface有黄色感叹号
- Android Studio NDK jni 开发
- Android根据布局文件动态添加控件
- 获取Android屏幕尺寸与密度
- Android中在布局中写ViewPager无法渲染出来的问题