标签: android-virtual-keyboard

如何在代码中禁用物理键盘(始终使用虚拟键盘)

你可能会问为什么我想要那个.原因如下:

我使用条形码扫描仪作为我的应用程序的登录屏幕.但是,连接条形码扫描仪会强制我的平板电脑使用物理键盘(它认为扫描仪是键盘),这会阻止虚拟键盘出现(我想要其他一些屏幕).我必须手动单击系统栏以禁用弹出虚拟键盘的物理键盘.

那么,有没有办法在代码中禁用物理键盘或者即使连接了某些"键盘"也能使虚拟键盘出现?

android android-virtual-keyboard

21
推荐指数
2
解决办法
2万
查看次数

"adb shell输入文本"是否模拟软件键盘输入?

adb shell input text "sometext"
Run Code Online (Sandbox Code Playgroud)

要么

adb shell input keyevent eventid
Run Code Online (Sandbox Code Playgroud)

这些是分别模拟虚拟/硬件键盘的实际输入吗?

我没有在developer.android.com/上找到这些命令的任何文档

这些命令有可靠的文档吗?

android adb android-virtual-keyboard

10
推荐指数
3
解决办法
2万
查看次数

键盘隐藏事件与BACK键

我注意到Android Market Application,当你点击搜索按钮时,它会显示键盘,但是当你点击back按钮时,搜索EditText变得不可见而且keyboard是隐藏的.问题是我EditText按下后退键后隐藏键盘后无法隐藏,因为我找不到隐藏键盘事件的监听器.我发现这个示例如何在Android中捕获"虚拟键盘显示/隐藏"事件? 但它在软键盘上不起作用.

android android-virtual-keyboard

8
推荐指数
1
解决办法
1万
查看次数

Android + PhoneGap:android:windowSoftInputMode似乎不起作用

我正在开发一个基于PhoneGap的应用程序,我搜索了很多关于如何在虚拟键盘出现时使我的webview调整其高度,或者至少获得虚拟键盘的高度.我发现了很多帖子(包括stackoverflow)

android:windowSoftInputMode="adjustResize"
Run Code Online (Sandbox Code Playgroud)

必须在清单中设置,我这样做了.我还发现,对于PhoneGap config.xml,有

<preference name="android-windowSoftInputMode" value="adjustResize"/>
Run Code Online (Sandbox Code Playgroud)

设置,我也粘贴了.我也尝试了两个参数的组合值'stateVisible | adjustResize'(不仅仅是'adjustResize'),但在我看来它们都没有效果.我不知道,也许我做错了,但你可以查看模拟器的截图(Android 4.0.3,但我也试过4.1.2和4.2.2):
http://screencast.com/ t/Mm0mw8c693 - 键盘可见
http://screencast.com/t/lZ2DomqeRR - 键盘隐藏
在屏幕截图中,我故意捕获了我的清单和config.xml设置,因此您可能会看到它们实际存在.
我甚至录制了短片 - http://screencast.com/t/xI9PMcMJxxx

正如您所看到的,当键盘显示/隐藏时,不会发生任何视口大小调整.我还使用console.log()检查了window.innerHeight,它对于可见和隐藏键盘都保持相同.

拜托,给我一些建议.

android android-virtual-keyboard cordova

8
推荐指数
1
解决办法
6411
查看次数

Qt Android:当我键入QLineEdit时,虚拟键盘会一直切换到大写

当我输入QLineEdit时,虚拟键盘以大写字母开头.即使我将其设置为小写,只要我输入单个字符,它就会返回大写.也就是说,每次键入一个字符时,键盘都会重置为大写.

即使在新创建的项目中也会发生这种情况(我只是进行了一次编辑并运行它).

我找到了一个关于同一问题的论坛帖子 - https://groups.google.com/forum/#!topic/android-qt/QMFZmkACAIA.

我正在使用Qt/C++(不是QML).

编辑:刚刚在一个新的QML项目上测试过它,那里也存在bug.我还发现了一个关于QML的帖子 - https://groups.google.com/forum/#!msg/android-qt/BzGDGoLNtYc/TdtOX9MW3vIJ.

编辑2:我使用inputMethodHints()测试,唯一有效的是ImhNoAutoUppercase.但是它仍然以一个大写字母开头,当按下后退按钮(删除最后一个字符)时,键盘将再次切换为大写,即使你输入了几个字母.在第一个字母后,它切换到小写,如果你没有按下后退按钮,它的工作原理很好.

c++ qt android android-virtual-keyboard

7
推荐指数
1
解决办法
1205
查看次数

谷歌键盘搞砸了我的自定义范围

好吧,我尝试构建一个富文本编辑器.我有一些按钮来格式化我的可编辑文本(粗体,斜体,URL等).
我使用谷歌键盘启用了所有文本更正选项(设置 > 语言和输入 > 谷歌键盘 > 文本更正).

我做以下事情:

在我EditText,我写了一些文字.
文本

我选择它并用SPAN_EXCLUSIVE_EXCLUSIVE(33)作为标志应用粗体.
选定的文字
在此输入图像描述

然后,我将光标移动到最后.
光标在最后

最后,我在文本的末尾添加了文本.添加的文字应该没有粗体.
粗体文字

好的,这是问题所在.我的大胆旗帜已经改变......为什么!?

这是一些日志:

D/ContentUtils: beforeTextChanged: start  end  span             flags
D/ContentUtils: beforeTextChanged: 0      7    ChangeWatcher    8388626
D/ContentUtils: beforeTextChanged: 0      7    ChangeWatcher    6553618
D/ContentUtils: beforeTextChanged: 0      7    TextKeyListener  18
D/ContentUtils: beforeTextChanged: 0      7    SpanController   18
D/ContentUtils: beforeTextChanged: 7      7    START            546
D/ContentUtils: beforeTextChanged: 7      7    END              34
D/ContentUtils: beforeTextChanged: 0      7    SpellCheckSpan   33
D/ContentUtils: beforeTextChanged: 0      7    CustomBoldSpan   33

D/ContentUtils: onTextChaghed
D/ContentUtils: …
Run Code Online (Sandbox Code Playgroud)

android android-virtual-keyboard

7
推荐指数
1
解决办法
130
查看次数

三星软键盘在焦点改变后丢失按键

我的应用使用基于PIN的登录.我连续有四个EditText视图,并在每个视图上设置以下TextWatcher的单独实例:

private class PinDigitWatcher implements TextWatcher {

    private final EditText digit;

    public PinDigitWatcher(EditText digit) {
        this.digit = digit;
    }

    @Override
    public void afterTextChanged(Editable s) {
        if (s.length() <= 0)
            return;
        switch (digit.getId()) {
        case R.id.pin_digit_a:
            mPinDigitB.setFocusableInTouchMode(true);
            mPinDigitB.requestFocus();
            mPinDigitA.setFocusable(false);
            break;
        case R.id.pin_digit_b:
            mPinDigitC.setFocusableInTouchMode(true);
            mPinDigitC.requestFocus();
            mPinDigitB.setFocusable(false);
            break;
        case R.id.pin_digit_c:
            mPinDigitD.setFocusableInTouchMode(true);
            mPinDigitD.requestFocus();
            mPinDigitC.setFocusable(false);
            break;
        case R.id.pin_digit_d:
            mPinDigitD.setFocusable(false);
            onSubmitPin();
            break;
        }
    }

    @Override
    public void beforeTextChanged(CharSequence s, int start, int count, int after) { }

    @Override
    public void onTextChanged(CharSequence s, int start, int before, …
Run Code Online (Sandbox Code Playgroud)

android android-keypad android-edittext android-virtual-keyboard samsung-mobile

6
推荐指数
1
解决办法
1163
查看次数

当虚拟键盘出现在React Native中时如何自动向上滚动屏幕(在Android上)

虚拟键盘覆盖了文本输入,我看不到我正在输入的内容。如何避免这种情况?(我尝试使用 KeyboardAwareScrollView 但它仍然覆盖文本输入)。我遇到的另一个问题是关于我的 styles.container 属性 -> justifyContent 和alignItems 的错误 - 它说将它们放在 ScrollView 属性内 - 我不知道如何做到这一点 - 我是 React Native 的新手。

  render() {
    return (
      <KeyboardAwareScrollView>
      <View style={styles.container} >
         <TextInput
          style={styles.input}
          underlineColorAndroid="transparent"
          placeholder="username"
          placeholderTextColor="#00bcd4"
          autoCapitalize="none"
          secureTextEntry={true}
          onChangeText={username => this.setState({ username })}  

          />
          <View style={styles.btnContainer}>     
         <TouchableOpacity style={styles.userBtn}  onPress={() => this.Login(this.state.email, this.state.password)}>
                   <Text style={styles.btnTxt}>Login</Text>
         </TouchableOpacity>

        </View>
      </View>
      </KeyboardAwareScrollView>
Run Code Online (Sandbox Code Playgroud)

对于 KeyboardAvoidingView 也有同样的事情:

  render() {
    return (
      // <View style={styles.container} >
         <KeyboardAvoidingView behavior="padding" style={styles.container}>
         <Text style={styles.heading} >Welcome to SelfCare !</Text>
          <Image
          style={{width: 200, height: 200, …
Run Code Online (Sandbox Code Playgroud)

android textinput scrollview android-virtual-keyboard react-native

6
推荐指数
1
解决办法
8896
查看次数

EditText onClick不显示虚拟键盘

如果我点击我的EditText,虚拟键盘就不会显示出来了.显示光标,但没有键入键盘.

我甚至尝试手动打开但没有作品.

这是我的代码:

public class CreateNote extends Activity {
EditText titleEdit;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.createnote);
    titleEdit = (EditText) findViewById(R.id.titleEdit);
    titleEdit.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {

            InputMethodManager imm = (InputMethodManager) CreateNote.this
                    .getSystemService(Service.INPUT_METHOD_SERVICE);
            imm.showSoftInput(titleEdit, 0);
        }
    });
    }
   }
Run Code Online (Sandbox Code Playgroud)

布局片段:

 <FrameLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="#989898" >

    <EditText
        android:id="@+id/titleEdit"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@drawable/edittextdrawale"
        android:ems="10"
        android:textColor="#fff"
        android:textColorHint="#fff" >

        <requestFocus />
    </EditText>

</FrameLayout>
Run Code Online (Sandbox Code Playgroud)

玩隐藏和寻找我的虚拟键盘的原因是什么?我在真实设备上测试,而不是在模拟器上测试.

android android-edittext android-virtual-keyboard

5
推荐指数
1
解决办法
7608
查看次数

我无法在Android上隐藏虚拟键盘

我正在使用支持库处理碎片并在片段中嵌套片段.

我有一个场景,我在现有片段中添加一个新片段(包含一个EditText).当用户点击EditText时,会显示虚拟键盘.但是当键盘打开时,用户可以按下ActionBar中的主页按钮,从堆栈中删除片段,但键盘仍然保持打开状态.我无法强行关闭键盘,我尝试了所有代码片段.鉴于所描述的情景,任何人都可以指导我如何解决这个问题?

编辑:我做了一个回调函数,我从片段onDestroy调用.承载所有片段的MainActivity实现此回调:

@Override
public void onHideSoftKeyboard(EditText editText) {
    // HIDE SOFT KEYBOARD HERE 

final InputMethodManager imm = (InputMethodManager)this.getSystemService(Context.INPUT_METHOD_SERVICE);
        imm.hideSoftInputFromWindow(editText.getWindowToken(), 0);

     Toast.makeText(this,"KEYBOARD HIDDEN",Toast.LENGTH_LONG).show();
}
Run Code Online (Sandbox Code Playgroud)

我收到Toast消息,并且在后退按钮(ActionBar后退按钮)上销毁了片段,只有键盘仍然存在.

@Override
public void onDestroy() {
    hideSoftKeyboard.onHideSoftKeyboard(editTextComment);



    super.onDestroy();
}
Run Code Online (Sandbox Code Playgroud)

android android-softkeyboard android-fragments android-virtual-keyboard

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

如何通过单击EditText外部来隐藏虚拟键盘?

我是Android开发的新手.我的要求是,当我点击EditText小部件的外部时,我想隐藏android虚拟键盘.请帮忙.

android android-virtual-keyboard

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

如何在Android中单击侧面时隐藏虚拟键盘

我正在学习教程.

代码工作正常editText.但现在我有很多(近10个)EditText领域.如果我为每个字段重复此代码,代码将是冗长的.任何人都可以告诉我如何在任何字段外点击时禁用虚拟键盘?

android android-virtual-keyboard

0
推荐指数
1
解决办法
1769
查看次数

如何隐藏Android软键盘?

我在Linearlayout中有两个EditText视图和一个Button.完成edittext中的写入后,我想隐藏Android虚拟键盘,我该怎么做?

android android-softkeyboard android-edittext android-virtual-keyboard

-5
推荐指数
1
解决办法
886
查看次数