- 博客(44)
- 资源 (1)
- 收藏
- 关注
原创 2021-06-23
鸿蒙OS调研鸿蒙技术架构内核层系统服务层框架层应用层鸿蒙技术架构与安卓区别鸿蒙技术架构内核层内核子系统:HarmonyOS采用多内核设计,支持针对不同资源受限设备选用适合的OS内核。内核抽象层(KAL,Kernel Abstract Layer)通过屏蔽多内核差异,对上层提供基础的内核能力,包括进程/线程管理、内存管理、文件系统、网络管理和外设管理等。驱动子系统:硬件驱动框架(HDF)是HarmonyOS硬件生态开放的基础,提供统一外设访问能力和驱动开发、管理框架。系统服务层系统服
2021-06-24 14:34:02
459
原创 IOS入门-页面控制
页面控制UINavigationController(导航控制器)添加根视图使用UINavigationController实现跳转UITabBarController(选项卡导航器)将UINavigationController放到UITabController中页面跳转使用presenter进行跳转使用dismiss销毁和push进行跳转使用pop返回上一页页面布局讲解横竖屏控制给UIDevice添加扩展使用UIdevice实现转屏UIDevice和UIScreen手势UINavigationCont
2020-05-22 13:19:05
269
原创 android 动态权限管理
permissionsdispatcher使用引用定义消息实体订阅者订阅事件发布事件使用引用EventBus引用地址implementation ‘org.greenrobot:eventbus:3.2.0’定义消息实体public static class MessageEvent { /* Additional fields if needed */ }订阅者订阅事件根据生命周期注册和销毁订阅者@Override public void onStart() { sup
2020-05-21 17:09:30
321
原创 android EventBus
EventBus解析原理解析使用引用定义消息实体订阅者订阅事件发布事件原理解析EventBus 的主要实现机制还是基于反射,一句话概括就是:注册时传入目标类对象,然后利用反射筛选出 @Subscribe 的方法,然后以相同的参数类型的方法做为 key,将不同的方法合并为 list 作为 value,得到一个 map 集合;当用户 post 数据时,再以数据类型为 key,从 map 中取出对应的方法 list,然后遍历 list,再利用反射机制对指定的方法执行 invoke 操作,完成调用;使
2020-05-21 15:08:51
297
原创 IOS入门-基础控件
基础控件UILable(文本标签)UIButton(按钮)UIView(视图)UITextView(文本输入框)UIImageView(图片显示)UITextView(能滚动的文字显示控件)UIActivityIndicator(菊花圈圈)UIActivityIndicator(菊花圈圈)UISwitch(开关按钮)UIPickView(滚轮选择器)UIDatePicker(日期选择器)UIToolBar(工具条)UIProgressView(进度条)UISlider(滑块)UISegmentControl
2020-05-11 15:38:38
755
原创 IOS入门-扩展语法
扩展语法类目扩展NSString的.h头文件扩展NSString的.m实现文件使用延展延展.h头文件延展.m实现文件协议,代理协议.h头文件继承协议的.h头文件实现协议的.m文件代理.h头文件代理.m实现文件使用KVO编写实体.h头文件实现实体.m文件使用KVC实体类.h头文件实体类.h头文件使用单例实体类.h头文件实体类.m实现文件通知回调目标动作回调委托协议回调闹铃协议.h头文件闹钟遵从闹铃协议.h头文件闹钟遵从闹铃协议.m实现文件将闹钟设为人的代理.h头文件使用Block回调子控件TestView.h
2020-05-09 17:27:36
773
原创 IOS入门-基础语法
基础语法常量与变量运算符分支语句常量与变量#import <Foundation/Foundation.h>#define count1 124int main(int argc, const char * argv[]) { @autoreleasepool { //常量即为恒定不变的量 是不可以修改的,是只读的 比如圆周率 一年12个月 ...
2020-05-08 17:50:18
440
原创 IOS 基础入门轮播图
Spanner轮播图使用使用//// ViewController.m// Banner轮播//// Created by clz on 2019/10/5.// Copyright © 2019 clz. All rights reserved.//#import "ViewController.h"#import <SDCycleScrollView.h&g...
2020-03-24 15:52:41
167
原创 Wear Os基础入门
SnapHelper和RecyclerView布局适配器使用布局<androidx.recyclerview.widget.RecyclerView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/rv" android:layout_width="match...
2020-03-24 10:15:43
908
原创 Wear Os基础入门-WatchViewStub
WatchViewStub布局布局<android.support.wearable.view.WatchViewStub xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_wid...
2020-03-24 09:27:16
473
原创 Wear Os基础入门
WearableRecyclerView布局资源代码布局<?xml version="1.0" encoding="utf-8"?><androidx.wear.widget.WearableRecyclerView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools...
2020-03-19 10:49:45
868
原创 android wearOs开发
抽屉式导航栏和操作抽屉布局资源代码布局<?xml version="1.0" encoding="utf-8"?><androidx.wear.widget.drawer.WearableDrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http:/...
2020-03-19 09:10:12
879
原创 C语言程序结构
程序结构编写第一个程序编写第一个程序#include <studio.h> int main(){ /*打印*/ printf("Hello World!") return 0; }程序的第一行 #include <stdio.h> 是预处理器指令,告诉 C 编译器在实际编译之前要包含 stdio.h 文件。下一行int m...
2020-02-21 10:25:07
258
原创 C语言简介
C语言简介历史使用C的场景历史C 语言是一种通用的高级语言,最初是由丹尼斯·里奇在贝尔实验室为开发 UNIX 操作系统而设计的。C 语言最开始是于 1972 年在 DEC PDP-11 计算机上被首次实现。在 1978 年,布莱恩·柯林汉(Brian Kernighan)和丹尼斯·里奇(Dennis Ritchie)制作了 C 的第一个公开可用的描述,现在被称为 K&R 标准。UN...
2020-02-21 09:53:18
443
原创 微信小程序入门与实战
电影列表自定义星级列表定义星星组件定义星星样式定义电影列表item组件编写电影item组件布局电影列表item组件样式编写列表页的组件编写列表页的组件布局编写列表页的组件样式编写电影页面编写电影页组件布局编写电影页组件样式接口的调用定义域名使用域名访问接口自定义星级列表定义星星组件<template name="starsTpl"> <view class="star...
2020-01-17 17:11:42
426
原创 微信小程序入门与实战
评论列表页评论列表wxml组件页面评论列表wxml组件页面属性解析<!--pages/post-comment/post-comment.wxml--><view class="comment-detail-box"> <view class="comment-main-box"> <view class="c...
2020-01-03 17:37:06
212
原创 小程序入门与实战
收藏和点赞功能给组件添加点击事件给组件添加点击事件<!--pages/post-detail/post-detail.wxml--><view class="container"><image class="head_image" src="{{post.postImg}}"></image><text class="title"&...
2019-12-30 10:49:40
236
原创 微信小程序入门与实战
静态资源列表页静态数据wxml布局静态数据属性解析postList列表module.exports模块导出给其它模块用var postList = [{ date: "Jan 28 2017", title: "小时候的冰棍儿与雪糕", postImg: "/images/post/post-4.jpg", avatar: "/images/...
2019-12-26 17:32:51
250
原创 微信小程序入门与实战
列表页的实现构建静态列表数据读取数据将数据存储在内存中构建工具类获取内存数据在对应页面调取缓存数据定义模板的item组件item.wxml使用item.wxml模板定义模板的item样式item.wxss使用item.wxss样式构建静态列表数据新建data.js文件模拟数据导出模块数据属性解析module.exports将数据导出var postLis...
2019-12-26 14:26:42
515
原创 微信小程序入门和实践
轮播图编写wxml组件布局wxss样式编写wxml组件布局属性名解析autoplay录播图自动播放interval播放间隔时间indicator-dots底部圆点指示器<!--pages/me/me.wxml--><view> <swiper autoplay="true" interval="2000" ind...
2019-12-25 15:25:00
145
原创 小程序入门与实战
底部tab选项卡设置路由和tabbar选项卡设置跳转tab页设置路由和tabbar选项卡属性解释pagePath要跳转的tab页面texttab选项卡上的文字iconPath未选中时tab选项卡上的图片路径selectedIconPath选中时tab选项卡上的图片路径{ "pages": [ "pages/start/start"...
2019-12-20 15:17:10
95
原创 微信小程序入门与实战
页面跳转在wxml文件中设置监听事件在wxml文件中设置监听事件在wxml文件中设置监听事件catchtap点击监听<!--pages/start/start.wxml--><view class="container"> <image class="title_bg" src="/images/start/title_bg.gif">...
2019-12-20 14:32:31
82
原创 微信小程序入门与实战
编写启动页图片加载json配置wxml布局wxss样式图片加载json配置navigationBarTitleText导航栏标题navigationBarBackgroundColor导航栏颜色enablePullDownRefresh下拉刷新数据disableScroll和上面一同配置{ "navigationBarTitleText": "...
2019-12-18 16:45:57
192
原创 微信小程序入门与实战
目录安装微信开发者工具新建项目新建页面编写顺序安装微信开发者工具新建项目新建页面在app.json中添加"pages/start/start",会自动生成start目录下的文件{ "pages": [ "pages/start/start", "pages/index/index", "pages/logs/logs" ], "window": { ...
2019-12-18 15:14:50
253
1
原创 ReactNative 入门与实战
ReactNative在夜神模拟器上运行adb.exe connect 127.0.0.1:62001adb devicesreact-native run-android
2019-12-17 14:12:50
100
原创 Android 代码混淆
代码混淆不需要混淆的类在你module 的 build.gradle 文件中引用混淆文件关键字规则使用混淆模板特殊处理混淆第三方混淆配置不需要混淆的类使用了自定义控件那么要保证它们不参与混淆使用了枚举要保证枚举不被混淆对第三方库中的类不进行混淆运用了反射的类也不进行混淆使用了 Gson 之类的工具要使 JavaBean 类即实体类不被混淆在引用第三方库的时候,一般会标明库的混淆规则...
2019-12-06 13:59:52
102
原创 flutter WebviewScafford网页加载
显示WEB页面import 'dart:convert';import 'dart:io';import 'package:flutter/cupertino.dart';import 'package:flutter/material.dart';import 'package:flutter_webview_plugin/flutter_webview_plugin.dart';...
2019-12-04 13:10:28
381
原创 flutter 入门与实战
实现影院热映和即将上映的页面定义网络框架获取网络数据构建实体存储电影列表数据使用工具类将数据变成实体类构建界面UI顶部小部件显示电影item的布局圆角背景图片五星好评控件item整体显示界面整合影院热映和即将上映页面主页将获取到的数据渲染到组件上定义网络框架获取网络数据 import 'dart:async';import 'dart:io';import 'package:dio/di...
2019-12-03 14:37:26
383
原创 flutter ListView的使用
io.dart里的HttpClient实现Dart原生http请求库实现import 'dart:convert';import 'dart:io';import 'package:flutter/material.dart';import 'package:http/http.dart' as http;class NetDemo extends StatefulWidget...
2019-12-03 11:00:46
170
原创 flutter 网络请求
io.dart里的HttpClient实现Dart原生http请求库实现import 'dart:convert';import 'dart:io';import 'package:flutter/material.dart';import 'package:http/http.dart' as http;class NetDemo extends StatefulWidget...
2019-12-03 10:11:32
109
原创 flutter pageView的使用
import 'package:flutter/material.dart';class SplashPage extends StatefulWidget{ @override _SplashState createState() =>_SplashState();}class _SplashState extends State<SplashPage>{v...
2019-12-02 20:53:02
284
原创 flutter CarouseSlider的使用
import 'package:flutter/material.dart';import 'package:carousel_slider/carousel_slider.dart';class CarouseSliderDemo extends StatefulWidget { @override State<StatefulWidget> createState(...
2019-12-02 20:50:37
1938
原创 flutter 入门与实战
首页显示轮播图添加html解析库和http网络请求库获取网页中的数据自定义个人页item样式组件个人页面添加html解析库和http网络请求库 http: ^0.12.0 html: ^0.13.4+1获取网页中的数据根据节点和标签获取import 'dart:async';import 'package:douban_flutter/model/movie_news.da...
2019-12-02 16:27:53
529
原创 flutter 入门与实战
个人详情页自定义触摸回调组件自定义个人页item样式组件个人页面Row水平布局padding内边距Icon图标控件IconButton可交互的图标控件PopupMenuItem菜单项的单个itemDrawer抽屉组件CircleAvatar圆形头像RaisedButton突出按钮组件ListTile条目组件BottomNavigationBar底部导航条FloatingAc...
2019-12-02 12:05:43
242
原创 flutter入门与实战
页面Row水平布局padding内边距Icon图标控件IconButton可交互的图标控件PopupMenuItem菜单项的单个itemDrawer抽屉组件CircleAvatar圆形头像RaisedButton突出按钮组件ListTile条目组件BottomNavigationBar底部导航条FloatingActionButton悬停按钮组件import 'da...
2019-11-29 14:59:38
212
原创 flutter 入门与实战
进入页面沉浸式状态栏图片加载页面跳转import 'dart:io';import 'package:flutter/material.dart';import 'package:flutter/material.dart';import 'dart:async';import 'package:flutter/services.dart';//加载页面/** * ...
2019-11-28 17:27:33
119
原创 fluuter入门与实战
进入页面图片加载页面跳转import 'package:flutter/material.dart';import 'package:flutter/material.dart';import 'dart:async';//加载页面/** * StatefulWidget有状态组件 表示属性可变(即UI可刷新) * 实现需要两个类 * StatefulWidget *S...
2019-11-28 14:29:03
347
原创 flutter 入门与实战
进入页面添加程序入口定义主题设置页面跳转路由import 'package:douban_flutter/pages/app_page.dart';import 'package:douban_flutter/pages/demo_page.dart';import 'package:douban_flutter/pages/login_page.dart';import 'pa...
2019-11-28 14:21:35
109
原创 Android OkHttpClient添加请求头和https
OkHttpClient添加请求头和https添加请求头添加请求头自定义请求头拦截器:package me.goldze.mvvmhabit.http.interceptor;import java.io.IOException;import java.util.Map;import java.util.Set;import okhttp3.Interceptor;import...
2019-11-28 11:24:58
1849
原创 android mvvm基础的使用
mvvm 基础的使用添加绑定编写布局定义实体类使用添加绑定android { ... dataBinding { enabled = true }}编写布局要以layout作为根布局使用data将布局和数据模型进行绑定定义变量的名称和变量类型给对应的控件使用对应变量的属性和方法<?xml version="1.0" encoding=...
2019-11-26 17:29:01
207
cherySdk.jar
2020-03-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人