用advancedSkeleton插件绑定的模型,k上动画 导入Unity的时候出现头跟身体分离是怎么回事?求大神指教

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用advancedSkeleton插件绑定的模型,k上动画 导入Unity的时候出现头跟身体分离是怎么回事?求大神指教相关的知识,希望对你有一定的参考价值。

参考技术A 好像不能直接导入吧,好像那个插件会生成3套骨骼,最后要把正常的骨骼烘焙一下的本回答被提问者采纳 参考技术B 这个嘛做品不错。

可见性绑定失败

【中文标题】可见性绑定失败【英文标题】:Visibility binding fails 【发布时间】:2015-01-10 21:06:58 【问题描述】:

我尝试将 Visibility 插件与 FieldBinding 插件一起使用,但没有成功。

模型方面:

    /// <summary>
    /// Gets or sets the birthdate.
    /// </summary>
    /// <value>
    /// The birthdate.
    /// </value>
    public DateTime? Birthdate  get; set; 

ViewModel 端:

public class DisplayUserViewModel : BaseUserViewModel

    /// <summary>
    /// The user
    /// </summary>
    public readonly INC<User> User = new NC<User>();

查看端,先试试:

        <RelativeLayout
            android:layout_
            android:layout_
            android:paddingRight="@dimen/ListIconTwoLineTextMarginRight"
            local:MvxBind="Visibility User.Birthdate, Converter=Visibility">

第二次尝试:

        <RelativeLayout
            android:layout_
            android:layout_
            android:paddingRight="@dimen/ListIconTwoLineTextMarginRight"
            local:MvxBind="Visibility Visibility(User.Birthdate)">

但结果相同:

MvxBind ( 2574):  33.60 Failed to create target binding for binding Visibility for MvxValueConverterValueCombiner combiner-operation

我只是以生日为例,但是每个可见性绑定都失败了(我有 x 个绑定的 x 错误消息)。


编辑 1

其他的绑定工作,我绑定了一堆文字,都显示不错:

      <TextView
         style="@style/TextView.ListWithIcon.Single"
         android:layout_marginTop="@dimen/ListIconTwoLineTextMarginTop"
         local:MvxBind="Text User.FirstName" />

我也尝试绑定到 INPC 属性,结果相同。


编辑 2

按照 stuart 的建议,我尝试了这个:

<TextView
    style="@style/TextView.ListWithIcon.Single"
    android:layout_marginTop="@dimen/ListIconTwoLineTextMarginTop"
    android:layout_marginLeft="@dimen/ListIconTextMarginLeft"
    local:MvxBind="Text Visibility(User.Birthdate)">

如果 Birthdate 为空,TextView 上的可见性转换器似乎可以工作:

Birthdate:  Gone

但它似乎没有绑定到可见性属性:

<TextView
    style="@style/TextView.ListWithIcon.SecondLine"
    android:layout_below="@+id/Birthday"
    local:MvxBind="Visibility Visibility(User.Birthdate)"
    android:text="Whatever birthdate" />

显示“无论生日”,而 Visibility(User.Birthdate) 返回 Gone...


编辑 3

如果您使用 Visible 伪属性,一切都会按预期工作。

<RelativeLayout
            android:layout_
            android:layout_
            android:paddingRight="@dimen/ListIconTwoLineTextMarginRight"
            local:MvxBind="Visible User.Birthdate">

【问题讨论】:

不能对这里的内容发表评论。是否还有更多错误消息或警告?你得到的是来自github.com/MvvmCross/MvvmCross/blob/…,但我希望/希望有更多。尝试一些实验:如果您使用 INPC 代替,绑定是否有效?如果您是 Visibility 以外的属性(例如,如果您在测试 TextView 中绑定到 Text),绑定是否有效?如果可以,最好编辑问题 - 在 cmets 中回答更难阅读...... 不幸的是,我只有上面的错误(还有一个已编辑)。有没有更详细的日志选项? "如果您使用 INPC,绑定是否有效?如果您使用 Visibility 以外的属性(例如,如果您在测试 TextView 中绑定到 Text),绑定是否有效?" - 也许尝试一次更改一件事 - 即,如果您将文本视图更改为 &lt;TextView style="@style/TextView.ListWithIcon.Single" android:layout_marginTop="@dimen/ListIconTwoLineTextMarginTop" local:MvxBind="Text Visibility(User.Birthdate)" /&gt; 然后 local:MvxBind="Text User.Birthdate" 那么这可能会给您一些线索 - 是问题 INC、Visibilty、DateTime? 或其他问题。 .. 我再次尝试并在我的问题中添加了第二个编辑。 在那种情况下......我不知道 - 看起来值转换器正在工作。 github.com/MvvmCross/MvvmCross-Tutorials/blob/master/… 中的示例对您有用吗?如果您切换到使用mvxBind="Visible User.Birthdate" 的绑定,它是否有效? 【参考方案1】:

LinearLayout 也有同样的问题:

<LinearLayout
    android:layout_
    android:layout_
    android:gravity="center"
    android:orientation="vertical"
    android:background="@color/white"
    local:MvxBind="Visibility Visibility(IsLoading)">

LinearLayout 的可见性不会绑定到我的视图模型:

未能为 MvxValueConverterValueCombiner 组合器操作的绑定可见性创建目标绑定

解决方案:向 LinkerPleaseInclude.cs 添加一个条目,这样 Visibility 属性就不会从视图中剥离:

public void Include(LinearLayout layout)

    layout.Click += (s, e) => layout.Visibility = layout.Visibility - 1;

【讨论】:

是的!我怀疑有这种问题,但我没有考虑房产本身。【参考方案2】:

有两种情况:

    如果你使用 MvvmCross 5 及以下你需要使用:

a) local:MvxBind="Visibility Visibility(User.Birthdate)" 在你看来

b) 在 Bootstrap 文件夹中添加一个 VisibilityPluginBootstrap.cs 文件,如下所示:

 using MvvmCross.Platform.Plugins;
    
    namespace YourNameSpace.Droid.Bootstrap
    
        public class VisibilityPluginBootstrap
            : MvxPluginBootstrapAction<MvvmCross.Plugins.Visibility.PluginLoader>
        
        
    

    如果你使用 MvvmCross 6 及以上版本你只需要使用:

    local:MvxBind="Visible User.Birthdate"在你看来

并且不需要引导文件:

【讨论】:

Tnx 作为答案,我在早期版本中使用了 Visibility 插件,当时 sintax 不同 -> local:MvxBind="Visibility ActiveTab==1, Converter=Visibility" 。这个插件确实适用于 Visible 但我想知道如何将 InvertedVisibility 转换器与 MvvmCross 6 + sintax 一起使用

以上是关于用advancedSkeleton插件绑定的模型,k上动画 导入Unity的时候出现头跟身体分离是怎么回事?求大神指教的主要内容,如果未能解决你的问题,请参考以下文章

Ninject之旅之八:Ninject插件模型

如何将值与空气日期时间选择器 Jquery 插件与模型绑定?

Ninject

unity动作技能绑定播放

jQuery two way bindings(双向数据绑定插件)

Vuejs 指令绑定模型