2011-08-03 16 views
3

次のスクリーンショットでは、スクロールビューでの後にの画像があります。 scrollviewはアンドロイドエミュレータのキーボードが表示されないようにするにはどうすればいいですか

enter image description here

私は私のフィールドに値を入力したい場合は、キーボードがポップアップし、それはそうのように、フィールドの私の見解をブロックし、ボタンが続くtablelayout、その後、いくつかのEditTextフィールドが、含まれています。

enter image description here

あなたが見ることができるように、それはブロックのEditTextフィールドの私の見解を。キーボードを隠すためのエレガントな修正はありますか?そうでなければ、私はレイアウトを変更しますが、私は何を変更するか分からない。彼らがチェックされている場合>言語とキーボード および「Androidのキーボード」やその他の奇妙なもののチェックを外す -

設定:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:background="#CCCCCC" 
    android:weightSum="1" android:id="@+id/llid"> 
    <TextView ... > 
    </TextView> 
    <!-- Image inserted here as an ImageView from my code --> 
    <ScrollView 
     android:id="@+id/svid" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:layout_marginTop="3dp"> 
     <LinearLayout> 
      <TableLayout ... > 
       <TableRow> 
        <TextView ... /> 
        <TextView ... />    
       </TableRow> 
       <TableRow> 
        <TextView ... /> 
        <TextView ... />    
       </TableRow> 
       <TableRow> 
        <TextView ... /> 
        <TextView ... />    
       </TableRow>       
      </TableLayout> 
      <EditText> 
      ... 
      </EditText> 
      <EditText> 
      ... 
      </EditText> 
      <EditText> 
      ... 
      </EditText> 
      <Button> 
      ... 
      </Button>           
     </LinearLayout> 
    </ScrollView> 
</LinearLayout> 

答えて

4

私の最初の考えはエミュレータ内の設定に移動している:私のレイアウトは次のようになりますtoo

+1

でキーボードを閉鎖するためにいくつかの短い方法を発見した、それは私がすべてのオプションをオフに –

+0

に動作します。 –

+0

その経路は何ですか?私は 'menu - > settings - > language&keyboard'に入っています。私は「Android Keyboard」のチェックを外しました。私はまた、 'メニュー - >設定 - >言語とキーボード - > Android Keyboard Settings'の各オプションをオフにしましたが、喜んではありません – Joeblackdev

2

エミュレータは、電話機に表示される内容をエミュレートすることが想定されているので、テキストフィールドに値を入力しようとすると、キーボードがポップアップ表示されます。私はそれが気になるかもしれないが、あなたのコードで無効にしようとするべきではないことを理解しています。それは電話でそれを無効にし、ユーザーは入力をどのように入力しますか?

また、ハードウェアの[戻る]ボタンを押すと、キーボードがポップアップして閉じます。

+0

さて、このアプリケーションはプロトタイプなので、私はエミュレータを使用しています。私は電話でそれを実行しません。それは単なるテストアプリなので、私はそれを電話で実行することを心配していません。 – Joeblackdev

0

プログラムあなたがのEditText eまたは他のいくつかのビューは、テキスト入力

UPDATEを呼びかけ

public void removeKeyboard(EditText e, Context context){ 
    InputMethodManager keyB = (InputMethodManager)context.getSystemService(Context.INPUT_METHOD_SERVICE); 
    keyB.hideSoftInputFromWindow(e.getWindowToken(), 0); 
} 

で無効にキーボードを設定することができます!あなたはSearchViewを使用してユーザー入力を設定した場合 は、私はこのことを確認だけ

nameButton.clearFocus();