作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试在activity2(设置页面)中创建一个按钮,当单击该按钮时,activity1(MainActivity)的标题将更改为我设置的内容。我一直在尝试使用接口(interface)来执行该功能,但它给了我一个空指针异常错误。
主要 Activity
@Override
public void changeActionBarTitle(String editText){
actionTitle = editText;
setTitle(actionTitle);
};
界面
public interface ActionBarInterface {
void changeActionBarTitle(String editText);
}
设置页面( Activity 2)
public class SettingsPage extends AppCompatActivity {
ActionBarInterface actionBarInterface;
Button editCompanyNameButton;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_settings_page);
setTitle("Settings");
editCompanyNameButton = findViewById(R.id.editCompanyNameButton);
editCompanyNameButton.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View view){
actionBarInterface.changeActionBarTitle("test");
}
});
}
}
谢谢。
最佳答案
您可以在不使用界面的情况下尝试此代码
主要 Activity :
@Override
protected void onResume() {
setTitle(Main2Activity.title);
super.onResume();
}
Activity 2:
public class SettingsPage extends AppCompatActivity {
Button editCompanyNameButton;
static String title;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main2);
setTitle("Settings");
editCompanyNameButton = findViewById(R.id.editCompanyNameButton);
editCompanyNameButton.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View view){
title = "test";
}
});
}
}
关于java - 如何从 Activity 2的按钮更改 Activity 1的actionBar标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60645079/
我是一名优秀的程序员,十分优秀!