xamarin - Xamarin.Android 在左右角添加工具栏项
解决方案
像这样试试
活动邮件.axml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/darker_gray">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:background="#1286d9"
android:layout_height="?attr/actionBarSize"
android:contentInsetLeft="0dp"
android:gravity="top|start"
android:contentInsetStart="0dp"
android:contentInsetRight="0dp"
android:contentInsetEnd="0dp"
android:layout_width="match_parent">
<TextView
android:layout_width="wrap_content"
android:text="Payment"
android:layout_gravity="center"
android:id="@+id/tvActionBarTitle"
android:layout_height="wrap_content" />
<ImageButton
android:id="@+id/ibNofication"
android:layout_gravity="right"
android:background="@mipmap/ic_myIcon"
android:layout_width="30dp"
android:padding="9dp"
android:layout_marginRight="6dp"
android:layout_height="30dp" />
</android.support.v7.widget.Toolbar>
</LinearLayout>
MainActivity.cs
[Activity(Label = "@string/app_name", Theme = "@style/AppTheme", MainLauncher = true)]
public class MainActivity : AppCompatActivity
{
Android.Support.V7.Widget.Toolbar _toolbar;
protected override void OnCreate(Bundle savedInstanceState)
{
base.OnCreate(savedInstanceState);
SetContentView(Resource.Layout.activity_main);
_toolbar = FindViewById<Android.Support.V7.Widget.Toolbar>(Resource.Id.toolbar);
SetSupportActionBar(_toolbar);
SupportActionBar.SetDisplayHomeAsUpEnabled(true);
SupportActionBar.SetDisplayShowTitleEnabled(false);
SupportActionBar.SetHomeButtonEnabled(true);
//Below you can set you preferred icon
SupportActionBar.SetHomeAsUpIndicator(Resource.Drawable.ic_myIcon);
_toolbar.SetPadding(0, 0, 0, 0);
_toolbar.SetPadding(0, 0, 0, 0);
_toolbar.SetContentInsetsAbsolute(0, 0);
}
}
样式.xml
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat">
<!-- Customize your theme here. -->
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
</style>
</resources>
您需要根据自己的要求设置图标、边距、样式。如果遇到问题,请更新您的 nugets 包。
输出截图
希望对您有所帮助。
推荐阅读
- express - mongoose 和 express 不从 .env 文件中读取
- scala - Scala 运行时反射获取特定类型的所有成员,即使对于内部类也是如此
- java - 如何处理 API 中的并发性?
- soap - 如何使用带有 TBA 凭据的 SOAP API 在 Netsuite 中创建销售订单?
- javascript - 在使用 react-beautiful-dnd 发生拖拽的情况下捕获错误
- visual-studio - ClickOnce .net 5 更新设置
- reactjs - 如何通过 10 onclick 从 API 加载更多图像并限制为 50?
- sql - teradata SQL CASE WHEN - SELECT 失败。3771: CASE 表达式的 WHEN 子句中有非法表达式
- python - 从 tkinter 上的按钮按下启动另一个脚本
- java - Spring Data JDBC - @Column 注释在 setter 上不起作用