gpt4 book ai didi

android - 如何在 Android 上编辑 SearchBar Xamarin Forms 的图标?

转载 作者:太空狗 更新时间:2023-10-29 15:32:24 32 4
gpt4 key购买 nike

我需要你的帮助!

我从事跨平台移动开发项目。我将 Visual Studio 与 Xamarin Forms 结合使用。我想制作一个带有 SearchBar(Xamarin.Forms 类)的页面,但是,我的问题是 SearchBar 图标的个性化,尤其是在 Android 平台上。我的搜索一无所获。如果您知道一种编辑图标的方法,我将不胜感激。 (我有一个模型可以遵循,所以我想改变的是图标而不是颜色)。

提前致谢!

enter image description here

最佳答案

enter image description here

Introduction to Custom Renderers

您可以相当轻松地对常用的 Xamarin.Forms 控件进行子类化,以便对控件进行面向平台的微小更改。

在上面的示例中,我创建了两个 SearchBar 子类,一个允许自定义图标,另一个允许删除图标,Xamarin.Android 呈现如下:

enter image description here

protected override void OnElementChanged (ElementChangedEventArgs<SearchBar> e)
{
base.OnElementChanged (e);
if (Control != null) {
var searchView = Control;
searchView.Iconified = true;
searchView.SetIconifiedByDefault (false);
// (Resource.Id.search_mag_icon); is wrong / Xammie bug
int searchIconId = Context.Resources.GetIdentifier ("android:id/search_mag_icon", null, null);
var icon = searchView.FindViewById (searchIconId);
(icon as ImageView).SetImageResource (Resource.Drawable.icon);
}

enter image description here

protected override void OnElementChanged (ElementChangedEventArgs<SearchBar> e)
{
base.OnElementChanged (e);
if (Control != null) {
var searchView = Control;
searchView.Iconified = true;
searchView.SetIconifiedByDefault (false);
// (Resource.Id.search_mag_icon); is wrong / Xammie bug
int searchIconId = Context.Resources.GetIdentifier ("android:id/search_mag_icon", null, null);
var icon = searchView.FindViewById (searchIconId);
icon.Visibility = Android.Views.ViewStates.Gone;

}
}

关于android - 如何在 Android 上编辑 SearchBar Xamarin Forms 的图标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36724216/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com