如何以编程方式获取操作栏后退按钮宽度?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何以编程方式获取操作栏后退按钮宽度?相关的知识,希望对你有一定的参考价值。

enter image description here我正在设置工具栏到我的操作栏,但是当我禁用主页按钮并且工具栏中的标题没有中心化时我有活动所以我想通过程序设置获得动作栏后退按钮来设置toolbar.setContentInsetsAbsolute(0, 0);

答案

试试这个

     toolbar = (Toolbar) findViewById(R.id.toolbar_editprofile);
    setSupportActionBar(toolbar);
    getSupportActionBar().setDisplayShowTitleEnabled(false);
  toolbar.setNavigationIcon(getResources().getDrawable(R.drawable.back_arrow));
    toolbar.setNavigationOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            finish();
        }
    });
另一答案
public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        if (getSupportActionBar() != null) {
            getSupportActionBar().setDisplayHomeAsUpEnabled(true);
        }
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()){
            case android.R.id.home:
                onBackPressed();
                return true;
        }
        return super.onOptionsItemSelected(item);
    }
}
另一答案

您可以通过设置样式,在清单中将活动主题设置为无操作栏并在布局中手动使用工具栏并根据需要设置样式,也可以更改文本大小或使用样式在工具栏中充气图像。

 <style name="Theme.MyFancyTheme" parent="android:Theme.Holo">
    <item name="android:homeAsUpIndicator">@drawable/ic_toolbar_back_button</item>
</style>

 <android.support.v7.widget.Toolbar
                    android:id="@+id/toolbar"
                    android:layout_width="match_parent"
                    android:layout_height="?actionBarSize"
                    android:layout_gravity="top"
                    android:background="@android:color/transparent"
                    android:visibility="visible"
                    app:theme="@style/Theme.MyFancyTheme">

以上是关于如何以编程方式获取操作栏后退按钮宽度?的主要内容,如果未能解决你的问题,请参考以下文章

如何以编程方式获取 Android 导航栏的高度和宽度?

以编程方式创建的后退按钮未显示在导航栏中?

以编程方式创建的后退按钮没有箭头

如何强制显示移动 Safari 底部导航栏以编程方式显示?

Android以编程方式获取可见布局的高度

ActionBar的后退主页按钮无法使用片段