我正在使用EditText's接受OTP,EditText一旦用户将数字输入到字段中,用户就会关注下一个OTP .它适用于所有设备.但是在运行Android OS P即API 28的设备上,requestFocus()无法正常工作,并且EditTexts由于焦点不会自动移动,因此用户无法输入连续数字.
这是代码 - 默认情况下EditText's都禁用以防止打开系统键盘.我用我自己CustomKeybaord接受数字.然而它除了Android P.它有效.
mEtCode1.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {
Log.d("BEFORE_", charSequence.toString());
}
@Override
public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {
hideError(charSequence.toString());
if (!charSequence.toString().isEmpty()) {
mEtCode2.requestFocus();
mEtCode1.setBackground(getResources().getDrawable(R.drawable.verify_code_edit_text_background));
mEtCode2.setBackground(getResources().getDrawable(R.drawable.verify_code_edit_text_background));
mEtCode1.setEnabled(false);
}
}
@Override
public void afterTextChanged(Editable editable) {
}
});
Run Code Online (Sandbox Code Playgroud)
请在这件事上给予我帮助
先感谢您
我想将 Room 数据库集成到我的 android 应用程序 (JAVA) 中。
我浏览了互联网上关于 Room 数据库的许多内容,但没有一个能消除我的疑虑,它们是
我正在获取给定时间戳后更新的联系人,我的代码是
Uri uri = ContactsContract.Contacts.CONTENT_URI;
Cursor cursor = cur = contentResolver.query(uri, null, "contact_last_updated_timestamp > ?", new String[]{timeStamp}, null);
Run Code Online (Sandbox Code Playgroud)
但光标返回给定时间戳之后未更新/删除/添加的联系人。
问题是光标返回设备联系人列表中的一些联系人。
这意味着查询错误的可能性较小。
我的问题是,为什么光标返回未更新/删除/添加的联系人?
如何获取给定时间戳后更新的联系人列表?(不使用ContentObserver)
先感谢您!
我创建一个layout。我想设置我的自定义toolbar(这是另一种布局)到顶部layout和FrameLayout正下方toolbar。但是FrameLayout应该得到layout的高度的其余部分(match_parent)。如何使用约束布局来实现这一点?