如何在 android MvvmCross Xamarin 中设置 ProgressBar 的可见性 [英] How to set visibility for ProgressBar in android MvvmCross Xamarin

查看:17
本文介绍了如何在 android MvvmCross Xamarin 中设置 ProgressBar 的可见性的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试将 ProgressBarvisibility 设置为 GONE.

I am trying to set visibility for ProgressBar as GONE.

在 XML 中

<?xml version="1.0" encoding="utf-8"?>
<ProgressBar xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:local="http://schemas.android.com/apk/res-auto"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    local:MvxBind="Visibility Visibility(ProgressVisibility)"
    android:background="@drawable/sel_custom_progress" />

ViewModel

private bool _progressVisibility;
public bool ProgressVisibility
{
    get { return _progressVisibility; }
    set { _progressVisibility = value; RaisePropertyChanged(() => ProgressVisibility); }
}

<小时>

我正在设置 ProgressVisibility = false;

发生了什么:视图仍然可见,没有被隐藏.如何解决这个问题.

What is happening: The view is still visible and not getting hidden. How to resolve this.

推荐答案

您需要为 Visibility 创建自定义值转换器,或者您可以使用 可见性插件

You need to create a custom value converter for Visibility or you can use Visibility plugin

public class MyVisibilityValueConverter : MvxBaseVisibilityValueConverter<bool>
{
    protected override MvxVisibility Convert(string value, object parameter, CultureInfo culture)
    {
        return (value ==true) ? MvxVisibility.Visible : MvxVisibility.Collapsed;
    }
}

xml:

local:MvxBind="Visibility ProgressVisibility,Converter=MyVisibility

更多信息这里

这篇关于如何在 android MvvmCross Xamarin 中设置 ProgressBar 的可见性的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆