android 中的自定义操作栏
custom actionbar in android
我创建了自定义工具栏并得到了这个结果:
enter image description here
我想让工具栏与屏幕的宽度相匹配。
这是xml代码:
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#009688">
<LinearLayout
android:id="@+id/linearLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<TextView
style="@style/TextAppearance.AppCompat.Widget.ActionBar.Title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:text="@string/app_name"
android:textColor="@android:color/white"
android:textSize="18sp"
android:textStyle="bold" />
</LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
java代码:
private void intView() {
if (getSupportActionBar() != null) {
getSupportActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM);
getSupportActionBar().setCustomView(R.layout.toolbar_custum_title);
}
}
为了那个拳头,你必须隐藏默认工具栏..
在您的 activity onCreate 方法中编写此代码以隐藏默认操作栏
this.getSupportActionBar().hide();
那就去你activity布局xml
<androidx.appcompat.widget.Toolbar
android:id="@+id/MainMenutoolbar_id"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/mycustom"
app:titleTextColor="@color/white"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.0">
//here you can implement textview edittext etc it can be custom
</androidx.appcompat.widget.Toolbar>
我创建了自定义工具栏并得到了这个结果: enter image description here
我想让工具栏与屏幕的宽度相匹配。
这是xml代码:
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#009688">
<LinearLayout
android:id="@+id/linearLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<TextView
style="@style/TextAppearance.AppCompat.Widget.ActionBar.Title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:text="@string/app_name"
android:textColor="@android:color/white"
android:textSize="18sp"
android:textStyle="bold" />
</LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
java代码:
private void intView() {
if (getSupportActionBar() != null) {
getSupportActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM);
getSupportActionBar().setCustomView(R.layout.toolbar_custum_title);
}
}
为了那个拳头,你必须隐藏默认工具栏.. 在您的 activity onCreate 方法中编写此代码以隐藏默认操作栏
this.getSupportActionBar().hide();
那就去你activity布局xml
<androidx.appcompat.widget.Toolbar
android:id="@+id/MainMenutoolbar_id"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/mycustom"
app:titleTextColor="@color/white"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.0">
//here you can implement textview edittext etc it can be custom
</androidx.appcompat.widget.Toolbar>