好久没有动博客了哈~先写一个比较基础的东西吧~其实呢~在java里面也有提到,但是使用更多的是在安卓里面的控件。
那么现在来写第一个回调:
第一种是界面之间~其实也算是吧~比较特别~这种是activity与activity之间比较常见的,就不特别说明:
@Overrideprotected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data);} 第二种呢:界面与Adapter之间的回调~或者这么说吧~就是把控件另类的分装这个时候原来的activity需要在分装里面的参数的时候:我们以adapter作为例子: 首先1.在你要分装的类里面inflace 一个接口以及点击事件 2. public inflace onclickback { void();}
onclickback mlistner;
public Message(onclickback mlistner){ this.mlistner = mlistener;} 在点击事件里面进行一个设置:if(mlistener != null){ mlistener.void();} 这个时候在主界面进行调用这个message方法。此时就可以调用到了~其实不是什么很难的方法:对于主界面我们实现的方法有俩种:和点击事件实现方法一样:也可以里面变成this 但是记得要继承这个方法接口: 那么这个是界面与分装类之间的回调:在安卓里面有时候会出现界面(1)调用界面(2)在调用界面(3),这个时候界面(3)直接返回值到界面(1)这个时候是不是傻傻的写onresultactivity,这样是可以~但是很麻烦~要是如果出现界面不是activity。这个时候呢?那么我们也有一种方法。那就是bus事件注册:compile ‘com.squareup:otto:1.3.8‘对于android studio继承这一句话。然后在进行一个分装~这个是我个人的写法。
public class OttoUtil { private static final Bus BUS = new Bus(); public static Bus getInstance() { return BUS; } }这个时候写一个工具类~这个是我本人比较喜欢做的~不会麻烦的多写代码这个时候在第三个界面进行一个注册。那么就是调用OttoUtil.getInstance().resiger(this);(一般在oncreate里面进行调用)记住这个时候有注册一定要关闭哦~~~那么就是反的OttoUtil.getInstance().unresiger(this);(一般在ondetroy里面进行调用的)看情况来定: 使用方式呢~其实就这样了~没什么太大的区别比如我传值1到界面(1)建立一个类 里面放置 int position:类名 GoodJob:在界面(3)里面在点击的位置进行,或者将进行的一步写入。上面进行一个对GoodJob里面的值进行一个赋值:OttoUtil.getInstace().post(goodjob);在界面(1)里面进行 @Subscribepublic void good(GoodJob b){ }
这样就会进行一个回调~以及进行一系列的活动: 那么下面讲解一下关于直播录制的问题:前一段时间有一个人遇到这个问题,那么我当时帮他查找了一下问题:主要原因出现在对方的直播界面是宽度大于高度:而我们手机的摄像头的问题是按比例来的,比例的图片对于其他的手机而言是不一样的然后那个同学把直播录制界面改成等宽等高~造成了压缩的效果。那么这个时候改怎么处理呢?那就是在录制的时候进行一个比例的换算调整。这个位子在相机的设置里面去找。这个位子也不多讲了~只是提一下而已:然后呢~下面还会陆续出现更多的博客~最近比较忙写的时间没有那么多~所以各位谅解哈~也可以提问题~我会不定时的看看的~
时间: 2024-10-09 12:16:03