In my app the first view of all my screens is an EditText, so every time i go to a screen the onscreen keypad pops up. how can i disable this popingup and enable it when manually clicked on the EditText????
eT = (EditText) findViewById(R.id.searchAutoCompleteTextView_feed); eT.setOnFocusChangeListener(new OnFocusChangeListener() { public void onFocusChange(View v, boolean hasFocus) { if(hasFocus){ InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); imm.hideSoftInputFromWindow(eT.getWindowToken(), 0); } } });
xml code:
<ImageView android:id="@+id/feedPageLogo" android:layout_width="45dp" android:layout_height="45dp" android:src="@drawable/wic_logo_small" /> <Button android:id="@+id/goButton_feed" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:text="@string/go" /> <EditText android:id="@+id/searchAutoCompleteTextView_feed" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_toLeftOf="@id/goButton_feed" android:layout_toRightOf="@id/feedPageLogo" android:hint="@string/search" /> <TextView android:id="@+id/feedLabel" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_below="@id/feedPageLogo" android:gravity="center_vertical|center_horizontal" android:text="@string/feed" android:textColor="@color/white" /> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/ButtonsLayout_feed" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_alignParentBottom="true" > <Button android:id="@+id/feedButton_feed" android:layout_width="wrap_content" android:layout_height="30dp" android:layout_margin="0dp" android:layout_weight="1" android:background="@color/white" android:text="@string/feed" android:textColor="@color/black" /> <Button android:id="@+id/iWantButton_feed" android:layout_width="wrap_content" android:layout_height="30dp" android:layout_margin="0dp" android:layout_weight="1" android:background="@color/white" android:text="@string/iwant" android:textColor="@color/black" /> <Button android:id="@+id/shareButton_feed" android:layout_width="wrap_content" android:layout_height="30dp" android:layout_margin="0dp" android:layout_weight="1" android:background="@color/white" android:text="@string/share" android:textColor="@color/black" /> <Button android:id="@+id/profileButton_feed" android:layout_width="wrap_content" android:layout_height="30dp" android:layout_margin="0dp" android:layout_weight="1" android:background="@color/white" android:text="@string/profile" android:textColor="@color/black" /> </LinearLayout> <ListView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/feedListView" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_above="@id/ButtonsLayout_feed" android:layout_below="@id/feedLabel" android:textSize="15dp" > </ListView>
the third view (EditText) is where the focus is.
To block the mobile device keyboard from displaying you simply need to set the field to readonly with jQuery as displayed in the code below. $('#input_92_31'). attr('readonly','readonly'); Hope this helps!
just use the android:hint attribute in your EditText. This text shows up when the box is empty and not focused, but disappears upon selecting the EditText box. this should be the accepted answer, +1 for simplicity.
The best solution lies in the Project Manifest file (AndroidManifest.xml), add the following attribute in the activity
construct
android:windowSoftInputMode="stateHidden"
Example:
<activity android:name=".MainActivity" android:windowSoftInputMode="stateHidden" />
Description:
Introduced in:
Link to the Docs
Note: Values set here (other than "stateUnspecified" and "adjustUnspecified") override values set in the theme.
You have to create a view, above the EditText, that takes a 'fake' focus:
Something like :
<!-- Stop auto focussing the EditText --> <LinearLayout android:layout_width="0dp" android:layout_height="0dp" android:background="@android:color/transparent" android:focusable="true" android:focusableInTouchMode="true"> </LinearLayout> <EditText android:id="@+id/searchAutoCompleteTextView_feed" android:layout_width="200dp" android:layout_height="wrap_content" android:inputType="text" />
In this case, I used a LinearLayout to request the focus. Hope this helps.
This worked perfectly...thanks to Zaggo0
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With