android返回按钮实现,Android实现返回键操作思路

记录用户点击的操作历史,使用栈数据结构,频繁的操作栈顶(添加,获取,删除),使用LinkedList

捕获用户的返回键操作,响应返回键,返回上一个界面

MainActivity.java

/**

* 返回键处理

*/

@Override

public boolean onKeyDown(int keyCode, KeyEvent event) {

if(keyCode==KeyEvent.KEYCODE_BACK){

boolean result=MiddleManager.getInstance().goBack();

if(!result){

Toast.makeText(MainActivity.this, "是否退出应用", 1).show();

}

return false;

}

return super.onKeyDown(keyCode, event);

}

MiddleManager.java

//操作历史栈

private LinkedList HISTORY=new LinkedList();

/**

* 处理返回键

* @return

*/

public boolean goBack() {

//如果为空会抛异常

if(HISTORY.size()>0){

if(HISTORY.size()==1){

return false;

}

HISTORY.removeFirst();

if(HISTORY.size()>0){

String key=HISTORY.getFirst();

BaseView targetView=VIEWCACHE.get(key);

mainContainer.removeAllViews();

View child=targetView.getView();

mainContainer.addView(child);

child.startAnimation(AnimationUtils.loadAnimation(mainContainer.getContext(), R.anim.left_to_right));

currentView=targetView;

return true;

}

}

return false;

}

/**

* 加载界面

*/

public void loadView(Class extends BaseView> baseViewClass) {

BaseView baseView=null;

//判断是否存在

String key=baseViewClass.getSimpleName();

if(VIEWCACHE.containsKey(key)){

baseView=VIEWCACHE.get(key);

}else{

try {

Constructor extends BaseView> constructor;

constructor = baseViewClass.getConstructor(Context.class);

baseView=constructor.newInstance(mainContainer.getContext());

} catch (Exception e) {

e.printStackTrace();

}

VIEWCACHE.put(key, baseView);

}

mainContainer.removeAllViews();

View child=baseView.getView();

mainContainer.addView(child);

child.startAnimation(AnimationUtils.loadAnimation(mainContainer.getContext(), R.anim.left_to_right));

currentView=baseView;

//放入栈

HISTORY.addFirst(key);

}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 在Android Studio中,返回按钮通常指的是工具栏上的“返回按钮,用于返回上一个活动或窗口。您可以通过单击该按钮或按下盘上的“后退”来触发返回操作。如果您需要自定义返回按钮的行为,可以在活动或片段中重写onBackPressed()方法。 ### 回答2: Android Studio是一款开发Android应用程序的集成开发环境,也是官方推荐的开发工具之一。在Android Studio中,返回按钮主要有两个作用:返回上一级页面和返回上一次编辑的代码位置。 首先是返回上一级页面。Android Studio的界面可以分为多个窗口,比如项目窗口、编辑窗口、运行窗口等。如果我们进入了某个子页面或者打开了其他窗口,想要回到上一级页面或者关闭其他窗口,可以使用返回按钮返回按钮通常位于工具栏的左侧,点击返回按钮就可以返回上一级页面或者关闭其他窗口,方便我们进行界面的切换与操作。 另外是返回上一次编辑的代码位置。在开发过程中,我们可能需要频繁地在不同的代码文件之间切换,查看不同的代码段或者追溯之前的修改。Android Studio提供了返回按钮来方便我们从所选的位置返回上一次编辑的位置。点击返回按钮,就可以回到之前编辑的代码位置,省去了我们手动查找的麻烦。 总之,Android Studio的返回按钮在页面切换和代码编辑之间起到了重要的作用。它提供了一种快速返回到之前操作的便捷方式,提高了开发效率和流畅度。无论是进行从页面切换,还是进行代码编辑,返回按钮都是我们必不可少的工具之一。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值