0

当我在我的 MVVMCross 应用程序上安装 BugSense 包时,我遇到了一个非常奇怪的情况。每次我在 EditText 中键入一个字母时,光标都会移动到第一个字符。这非常烦人,因为我必须将箭头移到字段的末尾才能输入下一个字符!

我所做的是覆盖我的 SplashScreenView 的“OnCreate”我设置了这个:

    protected override void OnCreate(Bundle bundle)
    {
        BugSenseHandler.Instance.InitAndStartSession(new ExceptionManager(), ApplicationContext, "xxxxxxxx");
        base.OnCreate(bundle);
    }

当我的启动画面消失时,它会移动到我的 LoginViewModel。我的登录视图的 axml 如下所示:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:local="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/white_full_box">
    <RelativeLayout
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_centerHorizontal="false"
        android:layout_centerInParent="true"
        android:layout_marginBottom="@dimen/table_margin"
        android:layout_marginLeft="@dimen/table_margin"
        android:layout_marginTop="@dimen/dialog_margin"
        android:padding="@dimen/zero"
        android:background="@drawable/white_full_box">
        <EditText
            android:id="@+id/username"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_above="@+id/password"
            android:layout_centerHorizontal="true"
            android:layout_marginBottom="40dp"
            android:ems="10"
            android:hint="username"
            android:layout_marginLeft="@dimen/table_margin"
            android:inputType="textVisiblePassword"
            android:singleLine="true"
            local:MvxBind="Text UserName">
            <requestFocus />
        </EditText>
        <EditText
            android:id="@+id/password"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_centerHorizontal="true"
            android:layout_centerVertical="true"
            android:ems="10"
            android:hint="password"
            android:layout_marginLeft="@dimen/table_margin"
            android:inputType="textPassword"
            local:MvxBind="Text Password" />
        <Button
            android:id="@+id/loginButton"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/password"
            android:layout_centerHorizontal="true"
            android:layout_marginTop="40dp"
            android:layout_marginRight="@dimen/dialog_margin"
            android:text="Login"
            style="@style/ButtonStyle"
            local:MvxBind="Click LoginCommand" />
    </RelativeLayout>
</RelativeLayout>

而且我只有普通属性绑定到视图模型中的用户名、密码和登录按钮。我做了几件事来验证这种行为:

1.)我留下了错误感知初始化代码并从用户名中删除了文本绑定。在这种情况下,用户名将正常运行,但密码字段将始终将字符移动到每个文本输入后的第一个字符。

2.) 我重新实现了文本绑定到用户名字段,然后注释掉了 BugSense 初始化代码,一切似乎又可以正常工作了。

这里发生了什么?我应该在哪里进行 MVVMCross 应用程序中的 BugSense 初始化?

4

1 回答 1

0

我的解决方案是切换到 Raygun.io,因为这似乎没有同样的问题。

Bugsense 似乎正在调查您可以在此处关注的问题

于 2014-05-14T14:54:54.640 回答