这是我对SO的第一次回答,因此,如果存在错误,对我来说不会太严厉。
在SO周围几乎没有答案,但我感到,有人敦促我拿出完整的解决办法,使我有钱。 如果我不向每个人提供各自的信贷,我就从整个旁边的那片东西gra。
(我简化了我的结果,导致我的看法太多,我不 with大麻 sp,并将尽量使之具有通用性......)
对于您的布局,您需要一名父母 EditText 和 即:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/lytContainer"
android:descendantFocusability="beforeDescendants"
android:focusableInTouchMode="true">
<EditText android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/etEditor"
android:inputType="number"
android:layout_gravity="center"
android:hint="@string/enter_your_text"
android:textColor="@android:color/darker_gray"
android:textSize="12dp"
android:textAlignment="center"
android:gravity="center"
android:clickable="true"/>
</LinearLayout>
因此,我在这里需要几件事。 我需要拥有我的EditText——即:
甲型六氯环己烷
此外,
android:descendantFocusability="beforeDescendants"
android:focusableInTouchMode="true"
因此,在EditText上不再侧重于进入Actative<>>>和之后进入Actative。 在设定这一环境时,你可以设定on TouchListener,将其重点从 EditText。
Now, in the Activity:
package com.at.keyboardhide;
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.view.MotionEvent;
import android.view.View;
import android.view.WindowManager;
import android.view.View.OnTouchListener;
import android.view.inputmethod.InputMethodManager;
import android.widget.EditText;
import android.widget.LinearLayout;
public class MainActivity extends Activity implements OnTouchListener{
private EditText getEditText;
private LinearLayout getLinearLayout;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.getWindow().setSoftInputMode(
WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
setContentView(R.layout.keyboardmain);
getEditText = (EditText)findViewById(R.id.etEditor);
getLinearLayout = (LinearLayout)findViewById(R.id.lytContainer);
getLinearLayout.setOnTouchListener(this);
getEditText.setOnEditorActionListener(new TextView.OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
if (actionId == EditorInfo.IME_ACTION_DONE) {
Log.d("EDTA", "text was entered.");
getEditText.clearFocus();
imm.hideSoftInputFromWindow(barcodeNo.getWindowToken(), 0);
return true;
}
return false;
}
});
}
@Override
public boolean onTouch(View v, MotionEvent event) {
if(v==getLinearLayout){
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(getEditText.getWindowToken(), 0);
getEditText.clearFocus();
return true;
}
return false;
}
}
我在此问页上找到的对借方的答复很少,而我在上找到的活动解决办法。 我不得不指出的其余部分是关于EditText的焦点,我在OnEditorActionListener和的TouchLister上加了这一重点。
Hope this helps someone and saves their time. :)
Cheers,
Z.