00:00
同学们,今天进入我们自定义空间的这个最后一天,也就是把今今天呢,就把这个自定空间内容呢全部讲完。那么讲之前先把上一次的内容啊,给大家略做一个小小小小的一个总结。好,那么我们上一次讲了哪些东西呢?上一次我们早上讲了一个自定义属性,对吧,这还有印象吧,自定义属性主要做的事情是在我们的这个布局文件里面去定这么一个新的属性,注意,这个才叫属性。这个属性系统里面有吗?没有,当我们去把这个属性定义的时候,假如说这个地方里面还没有,它会报错对吧,这个时候呢,它就它就提示我们要我们去把那个什么生成对吧,生成空间。好,那这个时候呢,这个时候他要让我们你看是吧,我去自动什么自动生成,看到没有生成了对吧,然后这个时候这个命名空间我们也可以改啊,可以改艾特硅谷啊,那那些名字。
01:12
好,那么这样做的话也没报错了啊,但是我们去运行起来是不行,所以我们还需要在这里面真正的去定义我们的属性。啊,在我们这个地方里面,属性你看,但是这个名字可以任意,但是一般情况下,我们定义的属性是属于某个类呀,所以一般而言,属性都跟我们要定义的这个类的名字一样。是吧,我是跟这个类型定义属性的,所以我的名字最好跟他一样。白,就像我们之前看一下那个属性名,是不也要叫这个,然后在这里面定不同的属性,然后属性是有不同的类型的,比如说。
02:04
Int类型是吧,是旧类型,引用类型,颜色啊,还有我们的枚举是好几种啊,还有尺寸,尺寸就是可以指定具体的大小等等是不是,然后我们有了过后,其实就这样,就是自定义属性了。但是我们想把这个属性把它给获取出来是吧,首先要想获取这个属性是肯定从一个对象中获取啊。这个时候呢,我们的安卓系统,他会用系统的破解析解析这个解析这个文件,然后遇到属性,它就封装到这个类里面。如果是月岛是一个类,那类的话,是不是我们就可以根这个全类名,全类名把它反射的方式去把这个类给实例画出来呀。所以我们为什么在布局文件里面去使用自定义的类,一定要选带有这两个参数的方法,是因为系统只认它。
03:06
如果不如果那的话,那我我们怎么把这个属性传给这个类啊,是不是啊,这肯定需要它。所以的话,如如果他发现这个构造方法不存在。系统会崩溃。在吗?就像。不知道大家有没有看那个一些电视剧,就是。共产党。要把。国民党策反的时候。那么共产党就派一个人去,这个人的话呢,就是。那个国军很信任一个人是吧,只有他去这个国君才愿意策反,就是很信任,那同样在这个地方里面呢,系统规定了,就是说我只认这个构造方法,其他人来我不我就什么不搭理,把他枪毙是吧。是不是,那就是这么一个意思,就是当然这个例子的话有有点那个意思,就是说系统规定我就要用带有两个参数构造方法去实例化概念,并且是通过反射,为什么有这带两个参数勾的方法呢?因为我们属性放在这里面吧,OK,这是我们这个制定属性给大家带来的一些知识。
04:20
那么。这个是用什么做的呀,配件,那么我们用系统的运配角去实现左右侧滑,非常的简单啊,很简单。对吧,然后的话呢,它可以加载不同的页面,还可以实现,你看你点扣还可以回调当前页面的位置等等,他已经帮我们做的很好了。是吧,但是我们为什么这么无聊,然后要做一个仿密配件呢?
05:06
因为这里面呢。这里面的话,我们通过自定义这么一个仿的配件。也就是说去做一个和预配点一样的功能。那么通过做它,诶,我们其中把U的一些机制,把它剖析出来,所以让我们知道系统的机制,系统的这个视图。也就是说我们所讲的用的一些机制,我们就更加熟悉。是吧,那也就是说我们这个。控件可以左右滑动,全部是靠我们自己定义的。而且这个控件它是什么呀。他其实是一个玉骨肉吧,嗯。那我再问大家同学们,你们觉得预配预配点。玉配姐,广告条的玉佩姐,你们觉得他负类应该是什么?
06:00
啊,应该是什么呢?好,我们我们来看一看什么地方里面的话呢,我们也看一看,它其实也是什么,对不对啊,只是说它实现的更好。用户用的话非常简单对吧,好,那同学们在我们这个地方里面的话呢,我们。去自定义这么一个东西,然后实现它这样的一个左右侧滑,那么我们是要把我们提前准备好的这个六张图片,把它放到里面去啊,好在这里面密配件里面。嗯,我们这个地方里面把提前准备好的六张图片放到里面,然后就实现了我们这样的一个滑动。那么我们以前把这个数据设置到运配节的时候,是用适配器啊,但是这个控件是全部我们自己定义啊,所以我们呢,就用系统基本的机制挨个去添加。
07:08
嗯,这个地方里面还不是他,嗯,在这。配件。然后呢,在这个地方里面,把我们的六个页面。刚开始是六个页面呢,挨个去把它这个以资源引用的方式呢,你看每一张图片,我们呢,去把它录一个image view,然后的背景那挨个添加到我们自定义的这个MY配中。是不是那么添加的时候,它是按照顺序是什么,从零到五对不对,然后添加好,然后添加过后我们它默认这个们能显示吗?是不能显示啊,后来我们重写了那个方法是给每个孩子指定位置,在平幕的位置是就可以显示啦,但显示过后,但是我们的。
08:02
这个呃,显示过后,然后我们就做了很多事情,哪些事情呢。就比如说让我们的页面可以最基本的滑动。对吧,啊,这个时候我们就来到触摸事件这里是吧,然后记录我们的棋,当我们滑动是在水平方向滑动吧,所以我们去记录X值,然后在。在我们在滑动的过程中,其实是我们是可以自己选,然后滑动的时候就自己计算距离,然后自己去移动,但是呢,我们发现系统里面有一个控件非常不错,叫手势识别器,对吧。然后只识器的话嘞,我们就分三步走去做,定义出来,实例化,然后在这里面定义出来过后,然后再实例化,其中它这里面有一些常用的方法,比如说我们的这个长按,比如说我们的双击好,最重要的是它有一个我们想要的方法,就是我们在屏幕上跟着滑动,它可以跟着我们走,而且实时的回掉一个移动的一个在X上移动距离,Y转移样的距离,以及它的一些事件。
09:08
这个时候我就可以在这个X上移动的这个距离实时去调这个方法,因为这个方法是根据我们距离去移动对不对,但是它本质里面移动的是什么呀,是调的是出不去啊好,大家再回想一下,同学们,如果这个方法这个值为正。它的移动方向是从哪个地方移到哪个地方,还记得吗?如果是正。就是从右到左,如果说腹就是从左到右。有有印象吗?但是我给你们画个图好,所以大家注意方向一下。那么既然如此,他是正。那么这个是就是我们刚刚说的距离啊,它是正,那它最后是调查,那也就是说,如果我们从一个正值给它,它其实也是从左到。又是一样的。对于这个school two而言,它的方向和BY。
10:05
哦,和我们拜应该是什么一样的吧?方向是一样的吧,你看这个值我存一个正值进去,它是从左到右,那么我存进去过后,那假如说我同样把这个值以后,我单独去用这个方法从一个正直进去,X从正极是也是从右到左呀。能理解吗?啊。那你看我,你就这样想这个方法。我从一个正子进去,它最终这个方法掉的是谁?叫他,那么也就是说我们抛开他具体的细节。从个正值,它从右到左,那么同样如果不我不调出了半,我直接调它也从个正值进去,所以应该也是从右到左呀,这没问题吧,诶好,大家一定要记住这几个知识点,因为今天还会用到啊。
11:02
然有了过后,我们真正去移动靠的就是我们的手势CP,然后手术,千万不要记住啊,千万要记住一点,就是在触,在这我们的触摸事件这里面去把这个传给谁。重开手识别器,那么手势识别器对世界的拦截,他能拦截吗?它能消耗时间吗?不能消耗啊,他在事件处力的过程中呢,它是没有对事件进行消耗,但是它可以对事件进行解析。就像黄河的水。它的它从这个这个这个这个很远的地方留下,但是黄河的水呢,我可以用一个在中间我做一个。我做一个什么呢?我对这个水呀进行过滤。过滤我对这个水性的分析,得到一些元素的一些参数,同样你在事件所性过程中呢,我要首思微些对这个事件的进行分析,哦,这个是双击,这是单机,但我并没有对这个水,并不像对这防火水我进行拦截,是不是我这是分析它哦,这里面它含什么物质,我得出一些道理,那么同样事件处理过程中,我手次我不参与拦截,我也对这事进行分析解析,哦,这是双哦,这是啥呢?这是。
12:20
但是没有拦,明白了吧,没有拦截,OK,那么这个时候有了过后我们就可以实现这哥们的一个移动。但是我们的过程中,我们特别渴望有这样的功能,就是。我们一不小心滑到这个位置的时候,一放要它。要他给什么定位到这个位置里面去。是吧?那怎么去让它定位呢?对吧,假如说我一放它是不是最难定位到这个地方啊,好,那么大家要注意一点,就是在我们这个地方里面,我们其实从的是啊这个地方。
13:02
移动到这里是不是啊。那这个距离怎么算呢?通常是。根据这个目标点减掉这一段起始位置,然后得到这一段距离,明白了吧,注意大家以后就算这个点是零的,好,我们以后也用这个零减掉这个起始位置,就得出这个距离。但是这个距离注意了啊,它有正负之分。知道吧,正负之分,那么负代表的方向不一样,正代表的方向不一样啊,大家先注意一下啊,正负不一样啊,为什么会有正负之分呢?你你想想我们是有可能这样的情况啊。你看现在是往右是不是,这是往左,它是有正负之分的对不对,那这个时候它会滑到左边,这个时候它就是什么,它的距离就是这边是不是,然后减掉这个起始位置对不对,就算出来。
14:00
对吧,都是这样算的。啊,都是算的,都是我们的这个地方起始位置。对不对,就算这样的一个举例,就是一个负的,它代表的方向可能不一样啊,大家先注意。好,那么这时候有了课,同学们在我们这个地方里面,我们就在地方一回弹,我们只是以这个为例,其实这边也可以,对不对。有这边力过后,他他他他他他回弹。对吧,当然刚开始我们做的是很生硬的,就是它直接嘣回弹,那回弹过后那怎么做呢?其实就是啊,其实就定位到某个页面就可以了,所以我们最初做的很简单,就是up的时候我们就找,诶该哪个页面对不对,该哪个页面就判断。去判断,怎么判断呢。就看哎,这个面滑动到底是大于了,大于应该回到左边了吧,如果小于就回来什么还是回复原来的对吧。就这样的话,这样一放的话,就还是原来的,只要是大于我们都处于大于屏幕的一半,这种情况,如果其他都还是默认的对不对,然后假如说我们这时候这样子了。
15:06
好,那它回弹的就会显示下一个页面对不对,就是这个情况,你大于屏幕的,那其实下个页面过后呢,这个时候我们这时候它就这样有回弹,回弹过后这个时候我们就可以做一个屏蔽非法值,然后就定位到具体的。某页面你看。这就这就是之前的,是不是这个时候呢,就定位到某个位置,这个位置就是我们的目标点。然后呢,这个就是我们就是我们的这个这个因为因为Y方向是没有变化呀,没有变化啊,这个是一个偏移量,我们今天还会把它打印出来,你就知道了啊,这个偏移量。是什么一个东西呢?这是X,它是什么一个东西呢?举个例子。这是一个屏幕,我这里面有个控件。空间的话呢。填充的,那如果它里面内容啊。
16:02
假如这里面有一个内容。要换个颜色,这内容如果说它是这样子,我我在上面移动,如果它内容。它里面内容没有发生变化,注意如果没有发生变化的话,这个值不会有变化,跟的时候OK时候Y它不有变化,你再怎么就是说它内容没有变化的话,你再怎么移动它没有变化,什么时候情况有变化呢?如果里面的内容。嗯。这内容,这红色代表内容,如果它发生这样移动了,同学们,这个时候它就有偏移量了,也就是说这个值它就有值了。今天我们一会会把日子打印出来啊,要注意,而且这个有正负之分。什么情况是正呢?像这种情况都是负的。它和我们之前那个一样的原理,就是从左到右是负,从右到左是正,也就是说这样情况下。
17:07
就是一个什么,从右到左就是个正的,就是正的偏向知道吧,可能我们之前那个是一样的,知道吧,好这个的话呢,也就是这个,这个的话呢,也是很重要的,有有些同学就不理解这个,当然这个的话呢。这个一般情况下,如果你看现在我左右滑动在Y轴上没有变化吧,那这个时候它是零。知道吧,他是是你。因为它里面内容没有产生偏移量。内容没有产生偏移量,它就是零,OK,好,那就是这就是刚才我们的X的。啊的这么一个意思,然后我们就可以定位到某个地方对吧。好,但是呢,我们想把这个把它变成哒哒哒哒哒哒回弹,是不是,那这个时候我们就在这个地方一放的时候。记录起始值,然后这时候呢。
18:03
就去把它介入起始值,但是这是因为改变系统的了,这时候呢,它就是记录我们的一个起始值,好,然后这个地方里面来记录了。修好过后接下来。我们在这个地方里面以调度方法,这个方法是强制绘制。强度绘制,强度绘制意思就是哥们,你重新绘制一下,重新画一下,这时候呢,这个方法会执行,同时。这个方法实行为什么呢?其实安卓中里面这个这个用的显示过程中有很多方法。这是我们。主要的方法就是测量。指定位置,而且指定位置。井就是一般是在我们的玉骨龙才有,对不对,因为它指定海子位置嘛。那么绘制就是我那么主要是这些三个方法去决定空间怎么显示,怎么摆放,当然这是还有其他的空间。
19:01
因为我们还这个试图是还可做其他事情呢,比如说移动等等,对不对。但是这些方法就是什么,它有个作用,就是计算我们的滚动。那这个时候他一执行后,这个方法被回掉,然后我们就计算计算。移,从这里移到这一小段的时候的一个结束的这一小段对应的距离,对吧?啊,也就是在我们地方里面移动这一小段的距离后,结束的时间,然后所花的时间,那这些所花的时间小于总时间,那就还得移动,那我们求平均速度出来,然后呢,时间长,在这里面注意不要把它放到后面。因为这个值啊,它放到后面可能会变成个零。知道吧,这里就是时间乘上乘上速度等于距离,然后总后坐标。那这个时候默认返回to是默认移动,但是如果移动结束,就把把它返回一个force,它就它这里面是不是就没有机会执行了,就没有机会执行了,但是如果一旦返回two的话,它就还在移动,然后一通过这个地方,一小点一小点移动,一小点一小点移动,然后呢,它一执行是不是又它这个又执行,又不断循环了,就这样他就哒哒哒哒回荡过去了。
20:11
对吧,所以的话你会发现,哇塞,这个人类的智慧怎么这么聪明是吧?把一个整块变成小脸移动。就感觉这种思想太精密了,是不是就发现他很生硬的被我们哒哒哒哒哒哒移动了,就像我们人生一样,哎,我们要达到一个理想的高度,一点一点去实现。19点,我们可以。用编程的思想可以折射我们的一些人生出来啊,你想本来我说,比如说我们以后是吧,要达到某个高度。然后就比如说我们的高度就是从这一方到这里,对不对,但是我们可以分步步骤哒哒哒哒不断的就是这样那个效果对不对,就不同我们实现我们的梦想,你看这不就是,这不就是我们生活的奋斗的历程嘛,是吧。好。这个。
21:00
有了过后我们回弹就搞定了是吧。回单搞定之后,我们又做加了一个,又还做了什么事情,同学们?啊。啊,是在上面加了一个radio,什么radio,就radio的话呢,有些同学容易犯错误,什么犯错误,他忘记选了我们的这个,把这个在它的下面。对吧,因为相对布局这个是填充负上,你是默认把它给覆盖掉啊,所以的话,你一定要在写在它的下边。那么还有一点的话,有的同学的话,一不小心把这个默认是左左边是吧,可以让水平集中更好看一些啊,这倒不是什么事啊。然后有的客户关键是什么呢?我们点击这个地方要切换某个页面。对不对,它的原理是什么呀。它的原理是什么呀,就是我怎么做到点击这个地方里面就切换到某个页面呢,怎么做到的呀啊。
22:06
怎么进来的呀,李博俊,你说一下怎么做到,我点击这个地方里面就可以切换到对应的页面啊。设置一个。然后我们那个。配置发生变化的时候就调这个接口。如果这个借口。对象不要这个。然后在这个类的外部。我一个这个接口的实例。给这个变量。啊,你说反了,你看我点这里的时候是什么气质变化吧,然后我再调页面的移动,其实就这么简单,当我滑到这个地方的时候才调接口,才回调这里对不对,说反了,不过不过还是有思对吧。OK。啊,然后的话嘞,我们你看啊,其实这么回事,就是我们一点击这个地方里面的时候,是它又这个内会发生变化呀,好在这里面是吧,啊一点它就会发生这个变化,那变化过后这个地方它会一点某一个是回调它的ID出来啊,但是ID之前我们内的时候是ID是一到五啊,所以他回调是也是一到五啊,那那又因为我们之前有了了一个方法,就可以根据一个位置去移到某个页面呢,不知道大家有没有没有印象有是不是这个是不是根据某个位置移到某个页面呢?所以我们这个时候移调某一个这样的一个的时候,刚好他的ID是一到。
23:41
一到五是吧,然后这个时候呢,那我们一点的话,是不是也可以切换到某个位,就就就刚好是零的话,就切换第哪个页面了,就这样的切换,但是我们这样滑动它会回调才是用的接口吧,好那接口我们怎么使用啊。首先大家要思考一个问题。就是。
24:02
我们用接口,我们定义接口,第一我们接口在哪里定义。这是一个问题。接口。用。第三,接口要给用户者。用谁是用户大家分清。我们我给你们总结一个高度的一个站在一个高度,或者说在任何情况下都适用的一种情况就是。什么,请问用的接口呢?就是说。当我这个功能需要在任何地方它都要监听我的状态的时候。这种情况就用到结果。比如说我们这个这个在任何情况下,他都有可能要监听我们这个状态的变化,这种情况,我们这个状态变化要监听我们状态变在任何情况,也就是在任何页面都有可能要接近我们的状状态变化的时候,我们就要写一个接口。
25:02
就说你哪个地方需要艰辛,你就。对,我这个接口写个时间类。然后我当一掉的时候,自然会掉到你那里去。知道吧,他就有这个好处。首先接口在哪里定呢?哪里有变化,你看当我们在这个地方里面一滑动的时候,是这个与配置有变化,所以在它内部里面定接口。你看一变化是不是就是这个方法,就是这个,这个页面发生变化了,它有变化,它变就是这个,当移到某个页面,页面就发生变化了。是别人。这是,但是告诉别人的话,但是我也不知道具体告诉告诉谁。就是我告诉别人,但是我不想,我不知道具体告诉谁,因为我因为我不知道到底有多少人来在用我这个,所以我选个接口,你要用没关系,你六个接口我就自然就毁掉你了。
26:00
所以它的扩展性特别好。那怎么用呢?第一第一接口就是在这里变化,这里面定义接口。然后从有从有一个方法。有用户要用的地方注意啊,我现在说的用户不是咱们的开发好的那些用户,我说的是哪个地方用,比如说现在的用户是就是用户。用这个接口的用户知道吧,然后他在这里面传进来,传进来过后当我页面真正变化的时候,我会调,因为它存进的实力叫my on page春姐对不对,然后我就调他里面的。调它里面的叫它里面的这个叫做配件是叫它里面的方法,那你现在在是以后你在其他页面也可以六啊。那是不是我我就回到你到其他地方啊,所以这样的话扩就是特别好了。
27:00
是不是啊好,那也就是说有了过后这个接口的话,我们就可以在地方里面呢。把它给存进来。做进来。啊呃。在这。在这里好。我们呢,就把它给存过来,当然我们也可以直接把它给六,对不对啊,比如说我们可以用这个。对吧,也可以用呃,打开是吧,是这样子啊同学们具体参数存序,那这个时候他本子上掉到的一会回调是本子上掉的是谁。调他这个方法知道吧,这个方法,所以它的接口的话,你一定要敲过两三遍。而且今天。还是用接口,以后还是用接口。你不会的话,老是痛。还不?用一天的痛苦。剪掉以后的兔。而且你学的更好,因为假如说你有点知识不会。
28:05
你总觉得哎呦自己不会是吧,然后你都会了,你这个会了,那你就觉得诶心里面有点底气对吧,就这么一个道理,所以大家一定要掌握啊,一定要掌握。好,那么有了后,我们就做到了这样的一个左右回,后来我们又讲了一个添加一个测试页面,添加测试页面能够随便添加吗?因为我这个点在动态创建了,所以我们一般会在动态创建那一丢。这个八审之前添加测试页面,而且我指定某个位置对吧,就要添加了,添加过后呢,这个内丢八就自动创建,就增加一个对不对,因为它得到孩子会也变了吧,好,然后就实现我们这个效果,然后后来发现我们在这个地方里面的话呢,第二个页面它背景它已经显示了。但是里面的孩子没有显示啊,导致问题的原因是没有被测量,就是说说一级页面是显示的。
29:03
那用我人为指定的一级页面,但是它一级页面的子页面说没被选上,因为他没有被测量过,所以我们又重写了谁。对,重现了我们的测量,对吧,这时候呢,我们就出来测量每个孩子。那这样的话,明明我们只存量这些孩子,怎么里面的孩子也就可以了?其实我现在测量的也只是一级啊,但是为什么,为什么里面的这些孩子能显示啊。他测量是是一个递归的,各自负责自自己的孩子啊,对不对,就像中国一样。这个社会的基本单位是家庭,如果每个家庭幸福,这个社会就幸。是不是?是不是这个道理啊?那同样的,我们我们这个页面它被测试了,被测量了,它能显示,这个页面被测量了,显示,但是里面有孩子,他再把自己孩子给负责了,这样的话是就都显示了,这样的话是不是都幸福了,是不是你看很多。
30:10
很多道理,因为这个不,这个安卓这个系统啊,是人设计的,所以他有人的思想。看到人的这种自然规律知道吧,所以不要不要把它想的太大啊。难是因为可能我们没有去,没有去理解啊,没有理解他为什么要这么做,OK,那这个时候我们就把这个定了,对,后来又讲了一间。我们在这个地方里面左右滑动的时候,大家想一想这件事可以啊。是因为在这个地方里面,这些空间对事件拦截。拦截吗?不拦截对吧,大家想想啊,正常情况下事件的传递是。从上层视图传到指示图。然后如果在中间没有任何消费,就回传了。
31:04
好,那么举个例子,假如说上层视图啊,上层视图,然后到下面,如果有一个子视图,它是它点击事件。然后上四组的实践还起作用吗?它是优先,或者这么说吧,我们一层套一层甲点中间最里面这个空间的时候。然后上的速度设置点击事件,孩子也设置点击事件。那你觉得他优先去响应谁的点时间?嗯,对,会想要孩子的,所以就会出现这样的一个情况,我们在历史中有一个艾em艾有个图片。有按钮。有文本,当我们去点按钮的时候,因为我们对按钮点击,这个时候你会发现外面的还起作用吗。起作用。知道吧,你都需要相应的配置,不能让。
32:02
不能让孩子有这个点击事件。当然你你要做点击也是可以解决这个问题的啊,网上有一大堆资料。所以的话,这种现象都是可以通过事件传递去解决,所以你会发现自定义控件最核心的内容,其中有一个就实验传递。还有事件处置这些,如果你把这些解决了,那同学们你们就学这四天,就没有白学四验传递知道吧,包括面试啊,包括以后啊,你们制定空间啥都要用,所以一定要明白事件传递是这么一个过程。然后在某些地方有拦截,反拦截过后,然后又怎样,是不是,然后我们要怎么去用我们以前东西去把问题解决掉。这样的话你就学明白了,而且今天我们还可以用到,然后我们在这地方它不它滑动的时候没问题,但是我们在这里面上下滑动也可以,然后左右滑动时就不行了,左右滑动不行的原因是因为我们这里面有U,是这默认情况,他对我们的事件进行进行消费了,因为我们事件传递的过程中,先是先是有同学会说,哎,老师啊,明明是我要经过我们自定义这个麦配啊。
33:17
但是注意适应传递传递,如果有个孩子消费了,他是不会回传了吧?因为我们上层图他拥有这个事件靠的是回传过来的。是不是蛔虫过来的,他才能够用它这个出门时间。但是有一种情况,我们是可以不给下面孩子时间,用什么拦截好,那假如说我们对孩子已经拦截了,那孩子又又又有什么办法可以拿到时间?好多法拦截,对,所以的话,你看冰来这水来煮研就是OK,你父亲可以拦截孩子的,没问题,我们可以反拦截,是不是,是不是你用刀我用矛,你用盾我用矛。
34:12
是不是所以的话呢,平衡了,你拦截可以拦截,我可以反拦截,是不是这样的话,是不是因为有时候我们的事件不行的被父亲拦截,但是我们可以反拦截。过了,那我们又反而优先,对不对。所以就有这么一个情况。就是说你有这招,你左青龙我右摆是不是好好同学们。这个时候呢,那么后来解决的问题就是,诶,我判断它是左右滑动还是左滑动,如果它上下滑动我就不拦截这个事件,那不拦截事件是左右滑动就不起作用啊,那上明明我要的下面滑动我就不拦截,是送给孩子啊,就让手六响应对不对?当我们左右滑动的时候,我们是希望与配角起作用啊,所以返回Q,返回Q的话,这个时候会触发MYMYP解的什么事件。
35:09
欧塔事件对不对,这个时候他的事件的话,刚好欧他事件的话是我们把这个事件从给手势B手势PG就可以让我们滚动了,最终呢,就把这个bug给解了。当然还有细节的bug的话,那就是呃,再再细细的判断了,这大体是不是就这么把这个问题给解决了,对不对。好。那同学们这是上一次要讲的内容,通过这样的回顾,大家是不是很清楚你们所学的内容啊,你看你们学了一天是吧,咱们几十分钟就可以把它搞定了。是不是其实,但是如果你上次内容你敲了。这个回顾你就感觉,哎哟这个。都懂了是吧,但是的话呢,如果你没有敲完,可能就还是有点困难啊,那我们今天将会说点啥呢?今天内容啊,可能店面看上很简单,但是呢,做起来的话还是啊,挺有意思的。
36:09
好给大家看一下,在地方里面,首先第一个就是我们联系人快速索引,你看这样的功能。你看滑动还可以变化是吧,你看这里面这大家看一下这个这个鼠标这里你看文字是不是有变化呀,而且这里有变化,而且123过后还消掉。是吧,这里滑动没有变化,这是可以这样滑动,那这样的功能它可以在几种情况用到啊,第一种情况就是我们联系人这种,我比如说我找一个叫啊阳光服的哥们,我在这是吧,就打电话给他很方便吧,那假如这里面是个城市。是吧,假如你要做一个约炮软件,你呢,你现在在北京,但是你想找北京的妹仔是吧,然后你就滑动,诶有个城市叫北京是吧,这里面就把北京给显示出来一点,哎,就可以找北京的女孩子了,是不是啊,是这样子啊。
37:05
那也就是说它可以映射到一些购购团购软件,团购软件是不是定位到城市啊,这样的话你可以选城市,比如说GPS定位它不准了,你可以手动去选,这时候定位到北京,你就可以买北京的或者北京的电影票。你又可以跟你的女神去看电影了,是不是?就是就是会有很大很很多需求啊,然后帮你们这个思路扩展一下,就这个功能就可以这样子对不对,就这样子啊。好,那么这个功能的话呢,我们一会儿就会做,还有一个效果。还有一个效果就是什么呢?就是我们的侧滑,这个侧滑它就像于QQQQ大家用过吗?QQ里面是有一个侧滑,我看一下,我现在拿出来给你演示一下啊QQQQ这里面的话呢,比如说你看啊同学们看到没有自由侧滑啊,这个侧滑是不是和一样啊,只是它侧滑里面它有一个自己和删除,其实我们这个地方里面完全可以把这部分变成是一个布局。
38:12
啊,到时候大家可以自己做啊,那也就是说做出过后是不是和这个QQ是一样的啦,对不对,一样的了,那也就是说,但是虽然看到这个很简单,但是你看看他,他你看第一我一放是不是还有个回弹呢。这还用到我们之前所学那个回弹,这是一个不光如此,这哥们呢,滑动过后,你看我接下来要按。这时候呢,它会你看我按过我一我点它,它自动隐藏啊,这时候还用到接口回调。知道吧,好一会会做一个什么事,你看一点,还有点击事件看到没有。还点击事件对吧,好还有一点更牛,还给删除是吧,这样的话,这样的话,它这里面就涉及到。
39:01
涉及到历史任务,他会拦截孩子的时间,然后当我们孩子设置点子线过后,你会发现。滑动又不起作用。因为我们的文本,它又会被我们自,因为这个这一条是自定义的,它会对自定义这个它的复存率呢的事件给难给给处理消化,消化掉了,所以滑不起作用,到时候我们一一解决,你会在这个过程中。学到我们这几天所有的知识知道吧,所以这个知识这个这个的话我一定要讲好啊,让你们呢听得很明白。啊,这就是我的责任是吧,还有一个水波纹,水波纹就比较简单啊,水波纹的话呢,就是一点过后啊,水波纹一点的话画一个圈圈。啊,这比较简单啊,所一点翻个圈切,而且不能变大变大对不对,它就画一个圆环出来,那这个的话比较简单,其实没有什么血的架值,最最主要是这两个。
40:03
好,那同学们这就是我们这个上一次和今天要讲内容对不对。
我来说两句