小编Kar*_*urg的帖子

TextInputLayout EditText nextFocusRight不能正常工作

我有两个TextInputLayout元素并排:名字和姓氏.在他们下面我有另一个全宽度TextInputLayout元素:电子邮件.

我正在尝试覆盖键盘上的下一个按钮,这样当在firstname输入中单击Next时,它应该转到lastname输入并从那里转到电子邮件等.

现在的问题是,当我在键盘上按下Next时,它不会转到lastname字段,而是转到它下面的电子邮件.

这是我的xml文件的一部分,我有这三个输入:

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:layout_gravity="center_horizontal"
    android:baselineAligned="false">

    <android.support.design.widget.TextInputLayout
        android:id="@+id/input_layout_firstname"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1">

        <EditText
            android:id="@+id/register_input_firstname"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:hint="@string/hint_firstname"
            android:inputType="textCapSentences"
            android:nextFocusForward="@+id/register_input_lastname"
            android:nextFocusRight="@+id/register_input_lastname" />

    </android.support.design.widget.TextInputLayout>

    <android.support.design.widget.TextInputLayout
        android:id="@+id/input_layout_lastname"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1">

        <EditText
            android:id="@+id/register_input_lastname"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:hint="@string/hint_lastname"
            android:inputType="textCapSentences"
            android:nextFocusDown="@+id/register_input_email" />

    </android.support.design.widget.TextInputLayout>

</LinearLayout>

<android.support.design.widget.TextInputLayout
    android:id="@+id/input_layout_email"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <EditText
        android:id="@+id/register_input_email"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="@string/hint_email"
        android:inputType="textEmailAddress" />

</android.support.design.widget.TextInputLayout>
Run Code Online (Sandbox Code Playgroud)

我也试过瞄准TextInputLayout而不是EditText但没有效果.

下一个焦点甚至是可能的,TextInputLayout或者它是一个错误还是我只是做了一些非常错误的事情?

android android-edittext android-textinputlayout

7
推荐指数
3
解决办法
5713
查看次数

数据库的连接池无法授予与标志为 0x1 的线程 602 (Binder_2) 的连接

几个小时以来,我一直试图弄清楚为什么我的应用程序数据库会死锁。

我有一个应用程序,它从活动中读取数据库并从服务中写入数据库。很直接。

我将我的数据库连接设置为一个实例:

public static synchronized MuseoDatabase getInstance(Context context){
    if(sInstance == null){
        sInstance = new MuseoDatabase(context);
    }
    return sInstance;
}
Run Code Online (Sandbox Code Playgroud)

服务

在我的服务中,我有一个Runnable定期更新数据库的事务。有时甚至有大块(300 多个条目)的数据。

在服务中,我打开了用于写入的实例

final SQLiteDatabase db = MuseoDatabase.getInstance(getApplicationContext()).getWritableDatabase();
Run Code Online (Sandbox Code Playgroud)

该服务工作正常。它很好地更新了数据库,那里一切都很好。

有问题的活动

现在我有一个接受 RFID 和数字代码输入的活动,它们都通过一种validateCode()方法进行验证。

为此,我以读取模式打开数据库实例

final SQLiteDatabase db = MuseoDatabase.getInstance(getApplicationContext()).getReadableDatabase();
Run Code Online (Sandbox Code Playgroud)

现在是有趣的部分

正如我上面所说,RFID uuid 和数字代码都通过相同的方法进行验证,因为该值保存在同一个 SQLite 表中。

当我验证代码时,一切正常。它正确地检查数据库中的代码以及它是否有效等。但是现在如果我要读取 RFID:死锁和错误:

The connection pool for database has been unable to grant a connection to thread 602 (Binder_2) with flags 0x1
Run Code Online (Sandbox Code Playgroud)

它甚至会导致应用程序的 RFID 阅读器出现故障(不再检测到 rfid 卡)。数字代码没有问题,但是当使用 rfid 时,尽管他们都起诉了相同的方法,但它只是失败了。 …

java sqlite android

5
推荐指数
0
解决办法
2041
查看次数

语义UI表单验证 - 仅在值不为空时才验证某些表单字段

我有一个表单,其中包含所需的字段以及可选的字段.我正在使用Semantic UI的表单验证行为来验证字段.

但是,我想要实现的是表单验证行为仅在可选字段中包含值时验证它们.

示例可选字段:

<div class="field">
    <label>First name</label>
    <input type="text" name="first_name" placeholder="First name">
</div>
Run Code Online (Sandbox Code Playgroud)

必填字段示例:

<div class="required field">
    <label>E-mail address</label>
    <input type="text" name="email" placeholder="E-mail address">
</div>
Run Code Online (Sandbox Code Playgroud)

我通过省略empty验证规则尝试了但是没有用.

是否内置了表单验证行为可以帮助我实现这一点,还是需要为可选字段编写自定义验证?

validation jquery semantic-ui

2
推荐指数
1
解决办法
7473
查看次数