Android 小知识点记录

1.使用fragment

在使用fragment中时,setUserVisible()方法先与onCreateView方法,并且当刚开始启动Viewpager时就会调用各个fragment的setUserVisible方法,当设置viewPager.setOffScreenLimit为fragment的总数时,则会在启动时即调用各个fragment页面得onCreateView方法

2.使用Scroller

使用Scroller的startScroll(int startX,int startY,int dx,int dy);方法时,当dy为正时为向上滑动。

view的getScrollY()方法获取的是view的top的edge滑动过的坐标,当向下时view的上面划出屏幕时,此时getScrollY的值为负值。

当view向上滑动之后,getScrollY的值将会变小,这个要注意,很容易就弄反了

view的ScrollBy(int dx,int dy)方法同样当dy为正时为向上滑动

3.设置ListView的onScrollListener事件时

 @Override
            public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {

                if(firstVisibleItem + visibleItemCount == totalItemCount){
                    Log.d("xinwa","已经滑动到了最后一页");
                }
            }

判断滑动到最后一行:firstVisibleItem+visibleItemCount=totalItemCount

4.对于不同分辨率的屏幕,

他的像素的密度是不同的通过不同的密度设置相应的像素值,来达到大致相同的效果

 private void initView(Context context){
        DisplayMetrics metrics = context.getResources().getDisplayMetrics();
        mMaxOverScrollY = (int) (metrics.density * mMaxOverScrollY);
    }

5.scrollBy(),scrollTo()

scrollBy()与scrollTo()方法都是移动的是view的content,即让view的内容发生移动,这点要注意一下,在viewGroup中,使用scrollBy方法时移动的是viewGroup中的子View

6.屏幕的大小

通常我们所说的4.7寸,5.0寸手机,这个长度指的是屏幕对角线的长度

dpi(Dots Per Inch)每英寸像素:是由对角线的像素点数除以屏幕的大小而得到

ldpi 密度值:120 分辨率 240 X 320,
mdpi 密度值:160 分辨率 320 X 480
hdpi 密度值:240 分辨率 480 X 800

android 系统使用mdpi即密度为160的屏幕作为标准,在这个屏幕上1dp = 1px,在hdpi中1dp = 1.5px

7.将dip转换为px

px = value * scale + 0.5f; 其中scale为屏幕的密度

8.sd卡的绝对路径

getExternalFilesDir()
It returns the path to files folder inside Android/data/data/your_package/ on your SD card. It is used to store any required files for your app (e.g. images downloaded from web or cache files). Once the app is uninstalled, any data stored in this folder is gone too.

获取应用程序下的存储目录,/data/data/your_package/,随着应用的卸载存储的文件被删除

getExternalStorageDirectory()
It returns the root path to your SD card (e.g mnt/sdcard/). If you save data on this path and uninstall the app, that data won’t be lost.

获取sd卡根目录,跟应用的是否卸载无关。

这里写图片描述

9.当activity设置启动模式为singleInstance时,调用startActivityForResult方法会直接回调onActivityResult方法,所以此时Fragment调用startActivityFroResult方法也不好使。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值