看测试图:
自己写是不存在的,这辈子都是不可能的。实现这个有两种方法;
1.修改系统代码,
emmm,网上基本找不到方法,但这种思路是可以的,有大神搞定了,可以分享一波
2.在软件中适配
在逛了一圈github后找到一个比较好用的,其他的也有,但是不是包各种各样的错,就是比较麻烦,地址如下:
https://github.com/ParfoisMeng/SlideBack
里面有引用说明,很简单,几分钟搞定
这是我的demo代码:使用了注解框架,不要在意
package cn.itcast.slideback;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.Button;
import android.widget.TextView;
import com.parfoismeng.slidebacklib.SlideBack;
import com.parfoismeng.slidebacklib.callback.SlideBackCallBack;
import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.OnClick;
import static cn.itcast.slideback.R.id.bt;
public class MainActivity extends AppCompatActivity {
@BindView(R.id.bt)
Button bt;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ButterKnife.bind(this);
// 在需要滑动返回的Activity中注册,最好但非必须在onCreate中
SlideBack.with(this)
.callBack(new SlideBackCallBack() {
@Override
public void onSlideBack() {
finish();
}
})
.register();
}
public void onDestroy() {
super.onDestroy();
// onDestroy时解绑
// 内部使用WeakHashMap,理论上不解绑也行,但最好还是手动解绑一下
SlideBack.unregister(this);
}
@OnClick(R.id.bt)
public void onViewClicked(){
Intent intent = new Intent(MainActivity.this,MainActivity.class);
startActivity(intent);
}
}
来源:CSDN
作者:阿尔法小队@
链接:https://blog.csdn.net/qq_42733641/article/details/103239571