我通过从另一个布局膨胀 EditText 视图来创建一个 EditText 侦听器。监听器不起作用。我试图在下面放置打印语句,但在digitText.addTextChangedListener(...)
. 在它被调用之前的任何东西。我确保 id 是正确的,并且它没有得到一个空指针来夸大视图。关于为什么它不起作用的任何建议?
public void digitsListener () {
LayoutInflater inflater = this.getLayoutInflater();
View dialpadLayout = inflater.inflate(R.layout.dialpad, null);
EditText digitText = (EditText)dialpadLayout.findViewById(R.id.digits);
digitText.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
System.out.println("If this prints it works.");
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void afterTextChanged(Editable s) {
}
});
}
这是 dialpad.xml 中的 EditText 视图
<EditText
android:id="@+id/digits"
android:layout_width="0dip"
android:layout_height="match_parent"
android:background="@android:color/transparent"
android:focusable="true"
android:gravity="center"
android:layout_weight="0.6"
android:inputType="number"
android:scrollHorizontally="true"
android:textSize="40sp"/>