如何在工具栏中添加徽标图像

时间:2017-04-08 15:32:26

标签: xamarin xamarin.android

您对Xamarin安卓新手。有这个问题:

1)如何在工具栏中添加图像徽标?

W X H的图像徽标大小是什么?

这里是工具栏

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 
xmlns:android="http://schemas.android.com/apk/res/android"    
xmlns:local="http://schemas.android.com/apk/res-auto" 
    android:layout_width="fill_parent"    
    android:layout_height="fill_parent">      
    <android.support.v7.widget.Toolbar 
      xmlns:android="http://schemas.android.com/apk/res/android"
      xmlns:app="http://schemas.android.com/apk/res-auto"          
    android:id="@+id/toolbar"          
    android:layout_height="wrap_content"          
    android:minHeight="?attr/actionBarSize"          
    android:background="?attr/colorPrimary"          
    android:layout_width="match_parent" />

由于

----更新:解决了

<android.support.v7.widget.Toolbar 
  xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:app="http://schemas.android.com/apk/res-auto"          
  android:id="@+id/toolbar"          
  android:layout_height="wrap_content"          
  android:minHeight="?attr/actionBarSize"          
  android:background="?attr/colorPrimary"          
  android:layout_width="match_parent" />

<ImageView    
android:id="@+id/toolbarimage"    
android:layout_marginTop="12dp"    
android:layout_marginBottom="6dp"    
android:layout_width="wrap_content"    
android:layout_height="wrap_content"    
android:layout_gravity="center"    
android:src="@drawable/Logo" />
 </android.support.v7.widget.Toolbar>

enter image description here

1 个答案:

答案 0 :(得分:1)

  

如何在工具栏中添加图片徽标?

首先,您需要正确创建自定义工具栏,您可以按照Replacing the Action Bar创建自定义工具栏。

然后,您只需在工具栏布局中添加任何元素:

Toolbar.axml(house.png文件夹中的Resources/drawable):

<Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/toolbar"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:minHeight="?android:attr/actionBarSize"
    android:background="?android:attr/colorPrimary"
    android:theme="@android:style/ThemeOverlay.Material.Dark.ActionBar">
    <ImageView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/house" />
</Toolbar>

MainActivity.cs:

[Activity(Label = "ToolbarDemo", MainLauncher = true, Icon = "@drawable/icon")]
public class MainActivity : Activity
{
    protected override void OnCreate(Bundle bundle)
    {
        base.OnCreate(bundle);

        // Set our view from the "main" layout resource
        SetContentView (Resource.Layout.Main);

        var toolbar = FindViewById<Toolbar>(Resource.Id.toolbar);
        SetActionBar(toolbar);
        ActionBar.Title = "";
    }
}

你会得到这样的东西: enter image description here

  

什么是W X H的图像徽标大小?

android:layout_widthandroid:layout_height决定ImageView的大小,但默认情况下,图片不会按ImageView进行自我调整。您可以通过设置android:adjustViewBounds="true"

来更改此行为
<Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/toolbar"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:minHeight="?android:attr/actionBarSize"
    android:background="?android:attr/colorPrimary"
    android:theme="@android:style/ThemeOverlay.Material.Dark.ActionBar">
    <ImageView
        android:layout_width="120dp"
        android:layout_height="120dp"
        android:adjustViewBounds="true"
        android:src="@drawable/house" />
</Toolbar>

有关Android版面的详细信息,请参阅Android Layout Document的布局参数部分。