java - 更改 fragment 中的 ActionBar 标题

标签 java android android-actionbar

我需要根据调用的 fragment 更改和更新 ActionBar 标题。

我使用了这个示例方法:

=Method 1===============================
Activity > Codigo
public void setActionBarTitle(String title) {
    getSupportActionBar().setTitle(title);
}

Fragmento > Codigo
public void onResume(){
        super.onResume();

    // Set title bar
    ((MainFragmentActivity) getActivity())
            .setActionBarTitle("Your title");

}

=Method 2================================

Activity:
public void setActionBarTitle(String title){
    YOUR_CUSTOM_ACTION_BAR_TITLE.setText(title);
}

Fragment:
((MainFragmentActivity) getActivity()).setActionBarTitle(YOUR_TITLE);

两种方式我都有,没有一个能实时更新标题。

但它无法正常工作,因为它没有根据屏幕/fragment 变化更新标题。升级需要一段时间,我希望是实时的。

缺少什么?

最佳答案

首先创建接口(interface)

public interface ToolbarInterface {

public void getToolbarResources(String title, int visibility);
}

在您的 Activity 中实现它

public class NavigationDrawerActivity extends AppCompatActivity
    implements ToolbarInterface

并重写activity中的接口(interface)方法

 @Override
public void getToolbarResources(String title, int visibility) {
        getSupportActionBar().setTitle(title);
    }
}

在Fragment中调用Oncreete方法中的接口(interface)如

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
 ToolbarInterface toolbarCallback = (ToolbarInterface) getActivity();
}

并从 onCreateView 方法设置标题,例如

toolbarCallback.getToolbarResources("Toolbar title",1);

关于java - 更改 fragment 中的 ActionBar 标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45033628/

相关文章:

java - 从 Firebase 数据库检索交叉对象子级

java - 显式类型参数 "<>"在 Android 4.1 上如何工作?

android - 如何通过 Activity 绑定(bind)从抽屉标题布局中获取 View ?

java - Android - 显示/隐藏 ActionBar 项目时淡入/淡出

android - 自定义样式操作栏在 android 4 中不起作用

android - 在 Android 4 中使用选项卡单击 ActionBar 中的项目

java - 如何从java调用oracle dbms_scheduler.run_job?

java - 是否有可在 Spring Cloud Data Flow 上使用的属性列表?

java - 是否有 Google App Engine 等效项可以让您将 SOAP 与 Java 结合使用并且是免费的,或者是 GAE 支持的 SOAP 库吗?

android - 限制可在 android EditText View 中输入的字数的好方法是什么?