アプリ作って海外移住

コピペプログラマーのメモ

EditText     自動でソフトキーボードが出るのを防ぐ

 入力文字種の制限は、inputType属性を指定する。inputType属性は多彩なタイプあるが、その中でも主なものを記載する。
number 数値入力  android:inputType="number"
numberSigned 符号付の数値入力 android:inputType="numberSigned"
numberDecimal 小数を含む数値入力 android:inputType="numberDecimal"
textPassword パスワード入力 android:inputType="textPassword"
textCapCharacters 大文字で入力する android:inputType="textCapCharacters"


例えば、3桁の数値入力の制限をする場合は、次のようになる。
<EditText
    android:layout_width="fill_parent"
    android:text="EditText"
    android:layout_height="wrap_content"
    android:maxLength="3"
        android:inputType="number"
    android:id="@+id/editText1"></EditText>


数値の制限はdigits属性の指定でも可能だ。次の用に指定すると”012+-”の文字のみ入力可能となる。
1
android:digits="012+-"

 

 

自動でソフトキーボードが出るのを防ぐ

 起動時フォーカスがEDITTEXTに当たったらキーボードがでる。

これは一番下にボタンがあって、それをソフトKBの上に持ち上げるとき

ほかのTEXTVIEW にあてる

<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="true"
android:focusableInTouchMode="true"
android:text="TextView">

<requestFocus />
</TextView>

 

 

 

 

 レイアウトを考え

ソフトKBに隠れてもいいものを下、

隠れてはだめなものを上にする。

 

 

 

 

 

 

 これは一番下にボタンがあって、それをソフトKBに」かくれる

自動でソフトキーボードが出るのを防ぐ

import android.view.WindowManager.LayoutParams;


public class EditActivity extends Activity {
private static int TARGET_YYYY;
private static int TARGET_MM;
private static int TARGET_DD;
private static int TARGET_WD;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.getWindow().setSoftInputMode(LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
setContentView(R.layout.edit1);

Intent intent = getIntent();
TARGET_YYYY = intent.getIntExtra("TARGET_YYYY", 0);
TARGET_MM = intent.getIntExtra("TARGET_MM", 0);
TARGET_DD = intent.getIntExtra("TARGET_DD", 0);



}











xml
android:maxLines="2" 表示エリアの改行数
android:maxLength="50"      文字数

EditText edit = new EditText( this ); edit.setFilters( new InputFilter[]{ new InputFilter.LengthFilter(2) } );

入力エリアに初期文字列をセット
フィルターで50文字に制限

//インプットフィルターで字数制限 50文字
InputFilter[] inputFilter = new InputFilter[1];
inputFilter[0] = new InputFilter.LengthFilter(50);

// エディットテキストのテキストを設定
EditText et = (EditText) findViewById(R.id.editText1);
//フィルターセット
et.setFilters(inputFilter);
et.setText(stbtext);


メニュー表示して save cancel 処理






//設定
EditText editText =(EditText) findViewById(id.edittext);
       
// エディットテキストのテキストを設定します
        editText
.setText("テスト");
       
// エディットテキストのテキストを全選択します
        editText
.selectAll();
       
// エディットテキストのテキストを取得します
       
String text = editText.getText().toString();

 // EditText の最大行の設定  
    editText.setMaxLines(1);  
    
    // EditText が空のときに表示させるヒントを設定  
    editText.setHint("This is Hint");  
    
    // EditText のカーソル位置を設定  
    editText.setSelection(3); 

// EditText のテキストを取得  
    String str = editText.getText().toString();