基础知识
J-Bule
这个作者很懒,什么都没留下…
展开
-
拖拽可排序Recyclerview(GridLayoutManager) 实现
拖拽可排序Recyclerview(GridLayoutManager) 实现github地址:需求详情:每个页面显示4个itemitem长按拖动可排序item四边等间距最后效果第一步: 每页显示4个item1.设置每个item的高度为Recyclerview高度的一半 public RecyclerView.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { mCon原创 2021-09-06 11:44:38 · 1070 阅读 · 0 评论 -
Java 值传递和引用传递
java只能是值传递;c可以引用传递指针:指针是一个变量,存储的是一个内存单元的地址引用:是原来变量的一个别名值传递:是指在调用函数时将实际参数复制一份传递到函数中,这样在函数中如果对参数进行修改,将不会影响到实际参数。引用传递:是指在调用函数时将实际参数的地址直接传递到函数中,那么在函数中对参数所进行的修改,将影响到实际参数。eg1:参数是普通变量public static void main(String[] args) { int i = 5; set(i); Sy原创 2021-07-22 17:34:27 · 206 阅读 · 0 评论 -
Andriod 文件(File) 使用
文件操作,首先需要一个文件路径(FilePath)一.在AndroidStudio -> Device File Explorer上查找文件夹1. Context.getFilesDir().getAbsolutePath()+ File.separator + "user.txt" 对应路径是 /data/user/0/包名/files/user.txt 2. Context.openFileInput("user.txt",MODE_PRIVATE)与Context.openF..原创 2021-07-15 15:24:58 · 887 阅读 · 0 评论 -
Activity生命周期(onNewIntent)
两个Activity A中有一个button,点击打开B,A和B的生命周期怎么执行?A(onPause)->B(onCreate)->B(onStart)->B(onResume)->A(onStop)三个Activity ,A和C中都有一个Button,点击打开B,如果B设置了singleTask(栈内复用),生命周期怎么执行?A第一次打开B和上述生命周期相同;C再次打开B时,这时栈中已经有B的实例,则会执行onNewIntent()方法C(onPause)..原创 2021-07-09 09:48:43 · 619 阅读 · 0 评论 -
Java 关于内部类 (传入匿名内部类的局部变量为什么要声明final?)
内部类 分为 成员内部类、方法内部类、匿名内部类 1. 成员内部类 (1)innerClass 的初始化需要借助outclass的实例(在outclass的构造函数中,或者通过outclass的实例创建) OutClass outClass = new OutClass(); OutClass.innerClass innerClass = outClass.new innerClass(); (2)innerClass的方法( get() )可以访问OutClass类的任何数..原创 2021-06-17 17:40:20 · 265 阅读 · 0 评论 -
两个应用间传递数据(AIDL)实例
在AS中新建两个应用 (AIDL_1和AIDL_2)在两个应用的app目录下新建一个文件夹(app->new->AIDL->AIDL File),AS会帮你自动建包和aidl接口*注意两个应用的 com.permissionx.aidl_1 的这个包名要一样interface IMyAidlInterface {/** * Demonstrates some basic types that you can use as parameters * and return ..原创 2021-06-10 18:07:29 · 514 阅读 · 0 评论 -
Android关于RecyclerView设置Adapter时传入list的疑惑?
今天遇到这样一个问题:在MainActivity中,我正常使用recyclerview,并传入new好的list数据集给adapter。 //MainActivity list = new ArrayList<>(); for (int i = 0; i < 10; i++) { list.add(String.valueOf(i)); } recyclerview_list = findViewByI.原创 2020-12-09 10:24:57 · 692 阅读 · 1 评论 -
工作记录--第三天(代码运行)
Ubuntu 系统下 ,手表无法连接AndroidStudio解决: (1)查看usb设备:lsusb (2)通过插拔需要连接的设备确定设备的ID(例如ID 1782:4002 及为我需要连接的设备) (3)在/etc/udev/rules.d/下面新建70-Android.rules文件 sudo gedit /etc/udev/rules.d/70-android.rules (4)在打开的文件中添加以下内容并保存(注意替换成你的ID) SUBSYSTEM=="usb"..原创 2020-07-15 18:34:36 · 182 阅读 · 0 评论 -
Java,Android 基础知识
Android 基础原创 2020-07-17 17:50:40 · 570 阅读 · 0 评论 -
git 公钥问题
Unbantu系统git 生成ssh密钥(先检查是否已经有)如果没有id_dsa.pub,则需要生成(邮箱名为授权拉取代码的邮箱) ssh-keygen -t rsa -C 'xx@xx.com'查看ssh密钥并全部复制 cat ~/.ssh/id_rsa.pub一般情况这样就可以了,但是如果报错为: The authenticity of host '[git.mioffice.cn]:29418 ([10.142.196.21]:29418)' can't be..原创 2020-10-28 16:14:01 · 1567 阅读 · 0 评论 -
Semaphore 妙用之——非阻塞等待
关于Semaphore: https://zhuanlan.zhihu.com/p/98593407记录一种实用场景:在规定时间内监控广播后取消注册广播// 1. 创建一个信号量final Semaphore semaphore = new Semaphore(0);// 2.创建一个广播并注册BroadcastReceiver myBroadcastReceiver = new BroadcastReceiver() { @Override public void.原创 2021-03-26 17:17:06 · 355 阅读 · 0 评论 -
Android 通过Log完整打印Intent 内容
Intent intent = getIntent(); // intent信息 Log.e(TAG,intent.toString()); Bundle bundle = intent.getExtras(); // extras intent附带信息 for (String key: bundle.keySet()) { Log.e(TAG, "Key=" + key ...原创 2021-03-18 16:31:31 · 3063 阅读 · 0 评论 -
第一行代码(3)--------数据类(equals(),hashCode(),toString()方法)【java和kotlin的区别】
数据类通常需要重写equals(),hashCode(),toString()方法。其中,equals方法用于判断两个数据类是否相等;hashCode方法作为equals的配套方法,也需要一起重写public class Phone { String brand; double price; public Phone(String brand, double price) { this.brand = brand; this.price ..原创 2020-10-13 14:21:38 · 952 阅读 · 0 评论 -
正则表达式(自学)
new RegExp(“a”); 检测 一个字符串中是否有字符a (有返回true)test() ;检测一个字符串是否符合某个正则表达式 (符合返回true)new RegExp(“正则表达式”,“匹配模式”);匹配模式可以是i:忽略大小写 new RegExp(“a”,“i”),大写小写a都行g 全局匹配模式...原创 2019-11-17 14:30:33 · 208 阅读 · 0 评论 -
Android 布局细节问题(为什么设置0dp?)
横向线性布局中,两个TextView,一个宽度填满,一个自适应。问题:这两个先后顺序不同,会有不同效果吗?回答:会结论:顺序会影响到线性布局(1)如果自适应宽度的小黑在前面,那么,设置layout_width="match_parent"的小红会占用他剩余的地方。![在这里插入图片描述](https://img-blog.csdnimg.cn/20200708152942674.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk..原创 2020-07-08 15:45:49 · 4483 阅读 · 2 评论 -
延时执行
开启新线程new Thread(new Runnable(){public void run(){ Thread.sleep(XXXX); handler.sendMessage(); //告诉主线程执行任务 } }).start利用定时器TimerTask task = new TimerTask(){public void run(){...原创 2019-10-31 13:09:43 · 226 阅读 · 0 评论 -
Android网络
基于TCP协议的网络通信a) TCP/IP网络通讯协议i. ServerSocketii. Socketb) Android 中访问网络的方式i. HttpClient网络ii. URL访问网络iii. URLConnection访问网络c) TCP/IPi. IP协议是两台计算机之间通讯的语言,保证计算机能发送和接受分组数据,IP协议负责将消息从一个主机传到另一个主机,以及分...原创 2019-09-02 18:57:13 · 183 阅读 · 0 评论