# phc.work.5.6 **Repository Path**: phcbest/phc.work.5.6 ## Basic Information - **Project Name**: phc.work.5.6 - **Description**: 星座demo - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-05-06 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 2020 5月 6号 1. 文件的读取,主要是针对在本地数据的读取, 在main目录下创建一个assets文件夹,可以在该文件夹下存储一些项目中需要用到的但是没必要放在资源目录下的文件。 使用`文件夹管理器AssetManager am = context.getResources().getAssets();` 来得到对应的文件夹,然后使用` 文件夹管理器.open方法来得到对应的文件输入流InputStream is = am.open(fileName);` 之后循环读取文件输入流,读入缓冲区,并且返回缓冲区的字节数` hasRead = is.read(buf);` 循环判断返回的字节数是否为-1,如果为-1,就已经读取完成,退出无限循环; 将读取的参数写入内存流中 ` ByteArrayOutputStream baos = new ByteArrayOutputStream(); baos.write(buf,0,hasRead);` 其中buf为数据,0为关闭数据中的起始偏移量hasRead为要写入的字节数, 最后用toString将baos转换为string。 位图的读取获得输入流后直接用位图工厂的decodeStream方法将输入流转换为位图,就可以了 2. 使用gson解析json , 使用gson 的 fromJson方法来解析json` jsonbean jsonBeanInfo = gson.fromJson(json, jsonbean.class);` 参数中 json为接受到的json文本,jsonbean.class为json转化为的实体类; 之后调用实体类中的得到集合的方法,就获得了数据集,图片在这里是String的格式存储了当前位图的路径, 需要传给适配器后适配器解析文件夹和位图后使用 # 2020 5月 7号 1. 沉浸状态栏的介绍https://blog.csdn.net/qq_34882418/article/details/80989232 2. 绘制view,新建一个类继承于View,重写两个构造方法,一个是带context参数的构造,一个是带context和AttributeSet参数的构造,主要是在布局中可以更好的引入,然后使用Paint制作画笔,onMeasure中写显示宽高,onDraw绘制 参考链接https://www.jianshu.com/p/b183e69b98f6?tdsourcetag=s_pctim_aiomsg|||||https://www.jianshu.com/p/afa06f716ca6?tdsourcetag=s_pctim_aiomsg 3. 自定义view 设置画笔颜色,和样式` paint.setColor(Color.parseColor("#000000"));` 设置画笔抗锯齿` paint.setAntiAlias(true);` 设置样式 ` paint.setStyle(Paint.Style.STROKE);` 设置view的尺寸 ---重写onMeasure方法 4. spinner的设置https://www.jianshu.com/p/ad0e97042045 # 2020 5月8号 1. 使用picasso来访问网络网络图片十分方便,只需要Picasso.get().load(图片url).info(imageView组件对象)就可以 使用。 2. String.replace方法可以替换字符串 3. 倒计时类**CountDownTimer**、 4. fragmentViewPager的适配器有两种,FragmentPagerAdapter//在碎片不多的情况下使用,页面不可见时, view可能会被销毁,FragmentStatePagerAdapter//在碎片多的情况下使用, view不可见时,fragment的实例可能会被销毁,但是状态会被保存 # 2020 5月9号 1. android:usesCleartextTraffic="true" 允许明文流量 2. 去除动画 getActivity().overridePendingTransition(0,0); 3. 项目需要有条不紊的整理一个个模块,需要减耦。