【问题标题】:How to set visibility for ProgressBar in android MvvmCross Xamarin如何在 android MvvmCross Xamarin 中设置 ProgressBar 的可见性
【发布时间】:2017-05-28 07:06:35
【问题描述】:

我正在尝试将visibilityProgressBar 设置为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;


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

【问题讨论】:

  • 您使用的是哪个版本的 mvvmcross?

标签: c# xamarin xamarin.android mvvmcross


【解决方案1】:

您需要为Visibility 创建一个自定义值转换器,或者您可以使用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

更多信息here

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-08-04
    • 1970-01-01
    • 1970-01-01
    • 2020-12-06
    • 2016-07-19
    • 1970-01-01
    • 1970-01-01
    • 2017-08-25
    相关资源
    最近更新 更多