我在RelativeLayout
中的Toolbar
元素之后放置了一个基本的Button
,但是在它上面看不到它(应该是一个“shuffle”白色图标):
下面是XML:
<Button
android:id="@+id/btnRandom"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_alignParentEnd="true"
android:layout_centerVertical="true"
android:layout_marginEnd="10dp"
android:background="@drawable/ic_shuffle">
</Button>
我错过了什么?例如,它确实适用于FloatingActionButton
。
下面是完整的XML:
<?xml version="1.0" encoding="utf-8"?>
<androidx.drawerlayout.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/mxhbg"
android:id="@+id/drawer_layout"
android:fitsSystemWindows="true"
tools:context=".MainActivity"
tools:openDrawer="start">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/mxhbg"
android:orientation="vertical"
android:weightSum="10">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="54dp"
android:orientation="horizontal">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<androidx.appcompat.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@color/colorPrimary"
android:elevation="4dp"
android:popupTheme="@style/ThemeOverlay.AppCompat.Light"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"></androidx.appcompat.widget.Toolbar>
<Button
android:id="@+id/btnRandom"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_alignParentEnd="true"
android:layout_centerVertical="true"
android:layout_marginEnd="10dp"
android:background="@drawable/ic_shuffle">
</Button>
</RelativeLayout>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="9">
<ListView
android:id="@+id/listviewsongs"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:divider="@android:color/transparent"
android:dividerHeight="10.0sp"
android:padding="8dp">
</ListView>
</LinearLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1">
<Button
android:id="@+id/hbtnpause"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_centerVertical="true"
android:layout_marginEnd="10dp"
android:layout_toLeftOf="@+id/hbtnnext"
android:background="@drawable/ic_play_circle">
</Button>
<Button
android:id="@+id/hbtnnext"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_alignParentEnd="true"
android:layout_centerVertical="true"
android:layout_marginEnd="10dp"
android:background="@drawable/ic_next">
</Button>
<Button
android:id="@+id/hbtnprev"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_centerVertical="true"
android:layout_marginEnd="10dp"
android:layout_toLeftOf="@+id/hbtnpause"
android:background="@drawable/ic_prev">
</Button>
<TextView
android:id="@+id/txtnp"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_toLeftOf="@+id/hbtnprev"
android:ellipsize="marquee"
android:marqueeRepeatLimit="marquee_forever"
android:padding="10dp"
android:scrollHorizontally="true"
android:singleLine="true"
android:textColor="#fff"
android:textSize="18sp"
android:textStyle="bold">
</TextView>
</RelativeLayout>
</LinearLayout>
<com.google.android.material.navigation.NavigationView
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="start"
android:id="@+id/nav_view"
app:headerLayout="@layout/nav_header"
app:menu="@menu/drawer_menu">
</com.google.android.material.navigation.NavigationView>
</androidx.drawerlayout.widget.DrawerLayout>
1条答案
按热度按时间pwuypxnk1#
您尝试做的事情是可能的,如果您发布
*.xml
文件的完整代码,您将找到显示按钮的方法,但是您应该按照文档将此Button
添加为icon
。1.创建
menu.xml
文件1.在您的
Activity
中,您应该覆盖onOptionsItemSelected
,并选择shuffle按钮的功能,如下所示要按照您的方式执行此操作,您应该将
Button
添加到Toolbar
中,如下所示