我一直致力于在我的Xamarin应用程序中实现渐弱的操作条和滚动到我的Android用户界面的视差。我需要扩展ScrollView,现在它被称为NotifyingScrollView。现在我该如何设计.axml。我不能只在我的axml中写notifyingscrollview,

namespace NightOut.UiComponents
{
class NotifyingScrollView : ScrollView
{
    public interface IOnScrollChangedListener
    {
        void OnScrollChanged(ScrollView who, int l, int t, int oldl, int oldt);
    }

    private IOnScrollChangedListener mOnScrollChangedListener { get; set; }


    public NotifyingScrollView(Context context) : base(context)
    {

    }

    public NotifyingScrollView(Context context, IAttributeSet attrs) : base(context, attrs)
    {

    }

    public NotifyingScrollView(Context context, IAttributeSet attrs, int defStyle) : base(context, attrs, defStyle)
    {

    }


    [Android.Runtime.Register("onScrollChanged", "(IIII)V", "GetOnScrollChanged_IIIIHandler")]
    protected override void OnScrollChanged(int l, int t, int oldl, int oldt)
    {
        base.OnScrollChanged(l, t, oldl, oldt);
        if (mOnScrollChangedListener != null)
        {
            mOnScrollChangedListener.OnScrollChanged(this, l, t, oldl, oldt);
        }
    }

}
}

最佳答案

一般示例:

namespace My.Namespace
{
    class MyCustomView : View
    {
    }
}

在.axml中按以下方式使用
<my.namespace.MyCustomView />

或者在你的具体例子中:
<nightout.uicomponents.NotifyingScrollView />

注意大小写,.axml中的名称空间是小写的,类名和c声明的大小写相同。

07-27 14:40