java – Android:从类中实现后退按钮
发布时间:2020-12-15 04:13:20 所属栏目:Java 来源:网络整理
导读:好的,所以这是我的问题.我正在研究一个 Android应用程序并同时学习android,所以大多数时候我都会遇到错误. Normaly我可以在研究了一下后修复它们,但是我在这一点上陷入困??境. 我正在尝试为我的应用程序中的每个Activity创建一个后退按钮,所以我想要创建一个
好的,所以这是我的问题.我正在研究一个
Android应用程序并同时学习android,所以大多数时候我都会遇到错误. Normaly我可以在研究了一下后修复它们,但是我在这一点上陷入困??境.
我正在尝试为我的应用程序中的每个Activity创建一个后退按钮,所以我想要创建一个“BackButton”类,所以我可以在每次想要时实现它.这是我的BackButton代码: import android.content.Intent; import android.view.View; import android.widget.Button; import android.app.Activity; public class BackButton extends Activity implements View.OnClickListener{ public static Button BackButton; // Defining the button public BackButton() { BackButton = (Button) findViewById(R.id.bBack); BackButton.setOnClickListener(this); } //To get the Button public static Button getBackButton() { return BackButton; } // OnClickListener public void onClick(View v) { try { Class MainActivityClass = Class.forName("eu.lafarga.treballderecerca.MainActivity"); Intent MainActivityIntent = new Intent(BackButton.this,MainActivityClass); startActivity(MainActivityIntent); } catch (ClassNotFoundException e) { e.printStackTrace(); }finally { // Save the things we've done. } } } 那么,我应该如何在任何活动中实现这一点?我做错了什么? (当然,我是哈哈) 解决方法
就个人而言,我建议不要这样做.我认为覆盖每个Activity中的后退按钮会更安全,更灵活,同样容易,如果不容易的话.很可能,随着您的应用程序的增长,您并不总是希望返回MainActivity,因为当用户点击后退按钮时,这可能不是预期的操作.覆盖需要它的活动中的后退按钮并运行您的代码
@Overrride public void onBackPressed(View v) { // save data first Intent MainActivityIntent = new Intent(CurrentActivityName.this,MainActivityClass); startActivity(MainActivityIntent); super.onBackPressed(); } 如果要通过调用setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)删除当前活动与目标活动(此处为MainActivity)之间的所有活动,也可以使用FLAG_ACTIVITY_CLEAR_TOP等标记. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |