我試圖在用戶按下時得到Enter鍵。Android Edittext按鍵不會觸發
我嘗試了很多代碼,但在模擬器和設備中都沒有得到Enter鍵。
這裏是我的代碼:
public class MainActivity extends AppCompatActivity implements View.OnKeyListener {
String barkodsifre;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
EditText sifre = (EditText) findViewById(R.id.barkodsifre);
sifre.setOnKeyListener(this);
}
public boolean onKey(View v, int keyCode, KeyEvent event) {
if ((event.getAction() == KeyEvent.ACTION_DOWN) &&
(keyCode == KeyEvent.KEYCODE_ENTER)) {
Log.i("a","b");
return true;
}
return false;
}
}
只有1的EditText和XML一個TextView。數據將被條形碼掃描器輸入到編輯文本。條形碼掃描器將在掃描的條形碼末尾發送「Enter」。 我從條形碼掃描器發送'輸入'在條形碼的末尾,但不知何故,它從不處理輸入密鑰。
是代碼錯過了什麼東西或代碼是完全錯誤的?我如何處理來自條碼掃描器的「輸入」鍵。
這裏是我的xml:
<RelativeLayout
android:layout_width="368dp"
android:layout_height="495dp"
tools:layout_editor_absoluteX="8dp"
tools:layout_editor_absoluteY="8dp">
<TextView
android:id="@+id/lblbarkod"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:ems="10"
android:inputType="none"
android:text="Barkod Giriniz!"
android:textAlignment="center"
android:textSize="30sp"
android:textStyle="bold" />
<EditText
android:id="@+id/barkodsifre"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignEnd="@+id/lblbarkod"
android:layout_alignLeft="@+id/lblbarkod"
android:layout_alignRight="@+id/lblbarkod"
android:layout_alignStart="@+id/lblbarkod"
android:layout_below="@+id/lblbarkod"
android:imeOptions="actionGo|flagNoFullscreen"
android:inputType="textPassword"
android:maxLines="1"
android:ems="10" />
</RelativeLayout>
對不起,我不明白你的答案。如果你的意思是我需要在Onkey方法上面寫入覆蓋,我做到了,它仍然不起作用。 –