Xamarin.Forms Toolbarıtem

Örnek indir Örneği indirin

Xamarin.FormsToolbarItem Sınıfı, bir nesnenin koleksiyonuna eklenebilen özel bir düğme türüdür PageToolbarItems . Her ToolbarItem nesne, uygulamanın gezinti çubuğunda bir düğme olarak görünür. Bir ToolbarItem örnek bir simgeye sahip olabilir ve birincil veya ikincil bir menü öğesi olarak görünebilir. ToolbarItemSınıfı öğesinden devralır MenuItem .

Aşağıdaki ekran görüntülerinde ToolbarItem iOS ve Android 'de gezinti çubuğundaki nesneler gösterilmektedir:

"ToolbarItem demo screenshot on Android and iOS"Android ve iOS 'ta "toolbarıtem ekran görüntüsü

ToolbarItemSınıfı aşağıdaki özellikleri tanımlar:

ToolbarItemSınıfı, sınıfından aşağıdaki yaygın olarak kullanılan özellikleri devralır MenuItem :

Bu özellikler nesneler tarafından desteklenir, BindableProperty böylece bir ToolbarItem örnek veri bağlamalarının hedefi olabilir.

Not

Nesnelerden bir araç çubuğu oluşturmanın alternatifi ToolbarItem , NavigationPage.TitleView ekli özelliği birden çok görünüm içeren bir düzen sınıfına ayarlamaya yönelik bir alternatiftir. Daha fazla bilgi için bkz. Gezinti çubuğunda görünümleri görüntüleme.

Toolbarıtem oluşturma

ToolbarItemXaml 'de bir nesne oluşturulabilir. TextVe IconImageSource Özellikleri, düğmenin gezinti çubuğunda nasıl görüntülendiğini belirleyecek şekilde ayarlanabilir. Aşağıdaki örnek, bazı ortak özellikler kümesi ile bir örneğini nasıl örneklendirilecek ToolbarItem ve onu bir koleksiyonuna eklemektir ContentPageToolbarItems :

<ContentPage.ToolbarItems>
    <ToolbarItem Text="Example Item"
                 IconImageSource="example_icon.png"
                 Order="Primary"
                 Priority="0" />
</ContentPage.ToolbarItems>

Bu örnek, metin olan bir ToolbarItem nesnenin, bir simge ve ilk olarak birincil gezinti çubuğu alanında görünen bir nesne oluşmasına neden olur. ToolbarItemAyrıca, kodda oluşturulabilir ve ToolbarItems koleksiyona eklenebilir:

ToolbarItem item = new ToolbarItem
{
    Text = "Example Item",
    IconImageSource = ImageSource.FromFile("example_icon.png"),
    Order = ToolbarItemOrder.Primary,
    Priority = 0
};

// "this" refers to a Page object
this.ToolbarItems.Add(item);

Özelliği olarak belirtilen, tarafından temsil edilen dosyanın stringIconImageSource her platform projesinde mevcut olması gerekir.

Not

Görüntü varlıkları her platformda farklı şekilde işlenir. ImageSourceYerel bir dosya veya katıştırılmış kaynak, URI veya akış dahil olmak üzere kaynaklardan gelebilir. İçindeki özelliği ve görüntüleri ayarlama hakkında daha fazla bilgi için IconImageSourceXamarin.Forms bkz Images in Xamarin.Forms ..

Düğme davranışını tanımlama

ToolbarItemSınıfı, Clicked sınıfından olayını devralır MenuItem . ClickedXaml içindeki örneklere dokunmalar veya tıklarına yanıt vermek için olaya bir olay işleyicisi bağlanabilir ToolbarItem :

<ToolbarItem ...
             Clicked="OnItemClicked" />

Kod içinde de bir olay işleyicisi eklenebilir:

ToolbarItem item = new ToolbarItem { ... }
item.Clicked += OnItemClicked;

Önceki örneklere bir OnItemClicked olay işleyicisine başvuruldu. Aşağıdaki kodda örnek bir uygulama gösterilmektedir:

void OnItemClicked(object sender, EventArgs e)
{
    ToolbarItem item = (ToolbarItem)sender;
    messageLabel.Text = $"You clicked the \"{item.Text}\" toolbar item.";
}

ToolbarItem nesneler, CommandCommandParameter olay işleyicileri olmadan kullanıcı girişine tepki vermek için ve özelliklerini de kullanabilir. ICommandArabirim ve MVVM veri bağlama hakkında daha fazla bilgi için bkz Xamarin.Forms MenuItem MVVM Behavior ..

Çalışma zamanında Toolbarıtem 'ı etkinleştirme veya devre dışı bırakma

Çalışma zamanında devre dışı bırakmayı devre dışı bırakmak için ToolbarItem , Command özelliğini bir ICommand uygulamaya bağlayın ve bir canExecute temsilcinin uygun şekilde etkinleştirmesini ve devre dışı bırakabilmesini sağlayın ICommand .

Daha fazla bilgi için bkz. çalışma zamanında MenuItem 'ı etkinleştirme veya devre dışı bırakma.

Birincil ve ikincil menüler

ToolbarItemOrderEnum Default , Primary ve Secondary değerlerini içerir.

OrderÖzelliği olarak ayarlandığında Primary , ToolbarItem nesne tüm platformlarda ana gezinti çubuğunda görüntülenir. ToolbarItem nesneler, öğeler için yer açmak üzere kesilecek sayfa başlığına göre önceliklendirilir. Aşağıdaki ekran görüntülerinde ToolbarItem iOS ve Android 'deki birincil menüdeki nesneler gösterilmektedir:

OrderÖzelliği olarak ayarlandığında Secondary davranış platformlar arasında farklılık gösterir. UWP ve Android 'de Secondary öğeler menüsü, öğeleri dikey bir listede açığa çıkarmak için dokunduğunuz veya tıklanmış üç nokta olarak görünür. İOS 'ta, Secondary öğeler menüsü gezinti çubuğunun altında yatay bir liste olarak görüntülenir. Aşağıdaki ekran görüntülerinde iOS ve Android 'de ikincil bir menü gösterilmektedir:

Uyarı

ToolbarItemOrder Özelliği olarak ayarlanmış nesnelerdeki simge davranışı Secondary platformlar arasında tutarsız. IconImageSourceİkincil menüde görünen öğelerde özelliği ayarlamaktan kaçının.