0

我有一个带有浮动标签的 EditText,它在侦听器启动并关闭(关闭)对话框片段之前不会浮动文本提示。我试图在 EditText 获得焦点之后和 dialogfragment 启动之前立即让提示浮动,以便用户可以看到已完成的提示浮动。EditText 使用“hasFocus”代码,该代码似乎阻止了标签立即浮动,尽管它最终会在 diaglogfragment 关闭后发生。似乎 OnFocusChangeListener 优先于 UI 线程上的 TextInoutLayout 浮动标签,不知道为什么。请指教。

活动.java

    ....
    private ListenerEditText fListenerEditText;
    fListenerEditText = (ListenerEditText) findViewById(R.id.FEditText);
    fListenerEditText.setOnFocusChangeListener(new View.OnFocusChangeListener()      {
        public void onFocusChange(View v, final boolean hasFocus) {
           if(hasFocus) {
                DialogFragment newFragment = new DatePickerFragment();
                newFragment.show(getSupportFragmentManager(), "datePicker");
       }
    }
    }); 
    ... 

布局文件.xml ...

    <android.support.design.widget.TextInputLayout
    android:id="@+id/DueDate_text_input_layout"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_row="4"
    android:layout_column="0">

    <com.example.jdw.thirdscreen.ListenerEditText
    android:id="@+id/FEditText"
    android:hint="Due Date"
    android:layout_height="wrap_content"
    android:layout_width="match_parent"
    android:layout_gravity="fill_horizontal|start"
    android:inputType="text|textCapSentences|textNoSuggestions"
    android:textAppearance="?android:attr/textAppearanceMedium"
    android:textColor="#FFFFFF"
    android:singleLine="true"
    android:maxLength="51"
    android:imeOptions="actionNext|flagNoExtractUi"
    android:layout_marginBottom="8dp"  >

    </com.example.jdw.thirdscreen.ListenerEditText>
    </android.support.design.widget.TextInputLayout>
4

1 回答 1

0

当标签浮动完成时,您应该能够扩展 TextInputLayout 并添加监听接口。

源代码应该位于这里附近的某个地方:

<android-sdk>\sdk\extras\android\support\design\libs
于 2015-08-15T00:14:10.930 回答