将 EditText 添加到工具栏
Add EditText to Toolbar
我的 Toolbar
和 EditText
看起来像这样:
我尝试将其添加为 ActionView
但我得到了这个结果:
它基本上只是添加了我的话 'Tap Below' 作为标题而没有 TextView
这是我所做的:
menu.xml
<menu>
...
...
<item
android:id="@+id/edit_text_menu"
android:orderInCategory="300"
android:title="Tap Below"
android:actionLayout="@layout/edit_text_layout"
app:showAsAction="ifRoom|collapseActionView"
/>
</menu>
edit_text_layout.xml
<?xml version="1.0" encoding="utf-8"?>
<EditText xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/myEditText"
android:background="#000000">
</EditText>
我想通过这样做我将我的 EditText
布局添加到 Toolbar
...
有人可以帮忙吗?
或者,我可以将 EditText
叠加在 Toolbar
上吗?
我尝试添加 <item name="windowActionModeOverlay">true</item>
但它没有做任何事情。
将 EditText 添加到工具栏 xml。
将 Toolbar
添加到顶部的 Activity's
xml 布局中。
将工具栏设置为 ActionBar:
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
}
这将使工具栏 "become" 成为 ActionBar
,其中包含 EditText
。
只需将 EditText
添加到您的 ToolBar
的 XML。这可能是最简单的方法。
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light">
<EditText
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/myEditText"
android:background="#000000" />
</android.support.v7.widget.Toolbar>
使用爱心代码
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
app:titleTextColor="@color/colorAccent"
app:theme="@style/ToolbarColoredBackArrow"
app:subtitleTextColor="@color/colorAccent"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
app:popupTheme="@style/AppTheme.PopupOverlay">
<TextView
android:textColor="@color/colorAccent"
android:text="June 14"
android:textAllCaps="true"
android:layout_gravity="right"
android:layout_marginRight="11dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/tv_daily" />
</android.support.v7.widget.Toolbar>
我的 Toolbar
和 EditText
看起来像这样:
我尝试将其添加为 ActionView
但我得到了这个结果:
它基本上只是添加了我的话 'Tap Below' 作为标题而没有 TextView
这是我所做的:
menu.xml
<menu>
...
...
<item
android:id="@+id/edit_text_menu"
android:orderInCategory="300"
android:title="Tap Below"
android:actionLayout="@layout/edit_text_layout"
app:showAsAction="ifRoom|collapseActionView"
/>
</menu>
edit_text_layout.xml
<?xml version="1.0" encoding="utf-8"?>
<EditText xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/myEditText"
android:background="#000000">
</EditText>
我想通过这样做我将我的 EditText
布局添加到 Toolbar
...
有人可以帮忙吗?
或者,我可以将 EditText
叠加在 Toolbar
上吗?
我尝试添加 <item name="windowActionModeOverlay">true</item>
但它没有做任何事情。
将 EditText 添加到工具栏 xml。
将
Toolbar
添加到顶部的Activity's
xml 布局中。将工具栏设置为 ActionBar:
@Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); setSupportActionBar(toolbar); }
这将使工具栏 "become" 成为 ActionBar
,其中包含 EditText
。
只需将 EditText
添加到您的 ToolBar
的 XML。这可能是最简单的方法。
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light">
<EditText
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/myEditText"
android:background="#000000" />
</android.support.v7.widget.Toolbar>
使用爱心代码
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
app:titleTextColor="@color/colorAccent"
app:theme="@style/ToolbarColoredBackArrow"
app:subtitleTextColor="@color/colorAccent"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
app:popupTheme="@style/AppTheme.PopupOverlay">
<TextView
android:textColor="@color/colorAccent"
android:text="June 14"
android:textAllCaps="true"
android:layout_gravity="right"
android:layout_marginRight="11dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/tv_daily" />
</android.support.v7.widget.Toolbar>