簡體   English   中英

如何在Android MvvmCross Xamarin中設置ProgressBar的可見性

[英]How to set visibility for ProgressBar in android MvvmCross Xamarin

我試圖將ProgressBar visibility設置為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;


發生了什么 :視圖仍然可見並且沒有被隱藏。 如何解決這個問題。

您需要為Visibility創建一個自定義值轉換器,也可以使用可見性插件

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

更多信息在這里

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM