gpt4 book ai didi

java - 向自定义工具栏添加后退按钮的最佳方法是什么?

转载 作者:行者123 更新时间:2023-12-02 08:45:24 24 4
gpt4 key购买 nike

所以我知道如何向自定义工具栏添加向后导航按钮,但是必须有一种更有效的方法将该功能添加到多个 Activity ,而不是在每个 Activity 中复制并粘贴此代码...

        Toolbar toolbar = findViewById(R.id.tlbar);
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
toolbar.setNavigationOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
finish();
}
});

我尝试创建一个公共(public)类,我创建了一个可以在每个 Activity 中调用的函数,但是您需要findViewById,这只能在 Activity 中完成。对此有什么建议吗?

最佳答案

首先创建一个像这样的基类

public class BaseActivity extends AppCompatActivity{


public void setToolbar(@IdRes int toolbarID){
try {
Toolbar toolbar = findViewById(toolbarID);
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
toolbar.setNavigationOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
finish();
}
});
}catch (Exception e){
e.printStackTrace();

}

}

}

使用 BaseActivity 类扩展所有 Activity 类之后

public class LoginNewActivity extends BaseActivity{

@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setToolbar(R.id.toolbar); //You can call your method like this
}
}

如果您想了解更多信息,请搜索JAVA 中的继承和多态性

关于java - 向自定义工具栏添加后退按钮的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61117686/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com