2017-08-25 23 views
-2

AndroidにTextViewを使用して入力テキストを埋め込むにはどうすればよいですか?アンドロイドのテキストから複数の入力を取得する方法は?

例えば、私はこれを実装したい:

「あなたのお名前は___で、これがレベルでの____」

「___」は、ユーザが記入しなければならない空白です指定された入力と私は検証のためにそれをチェックします。

android:hintとは異なりますのでご注意ください。

どうすれば実装できますか?

+1

これまでに試したことはありますか?任意のコード? – Umair

+0

私はTextviewとEditTextを水平に設定することを考えましたが、これは解決策ではないと私は思います。 –

+2

edittextを使って行うことができますが、たくさんの作業が必要です。ですから、良いアプローチはtextviewsとedittextを水平に使うことです。 – Umair

答えて

0

のように試すことができます。これを行うには、XMLでEditTextを作成します。 Javaクラスで

<EditText 
    android:id="@+id/editText" 
    android:layout_height="wrap_content" 
    android:layout_width="match_parent"/> 

次のコードを追加します。これは、コードの出力である

final EditText edittext = (EditText) findViewById(R.id.editText); 
    edittext.setText("Something "); 
    Selection.setSelection(edittext.getText(), edittext.getText().length()); 
    edittext.addTextChangedListener(new TextWatcher() { 
     @Override 
     public void onTextChanged(CharSequence s, int start, int before, int count) { 
      // TODO Auto-generated method stub 
     } 

     @Override 
     public void beforeTextChanged(CharSequence s, int start, int count, int after) { 
      // TODO Auto-generated method stub 
     } 

     @Override 
     public void afterTextChanged(Editable s) { if(!s.toString().contains("Something ")){ 
       edittext.setText("Something "); 
       Selection.setSelection(edittext.getText(), edittext.getText().length()); 

      } 

     } 
    }); 

を。ここで文字列何かは静的であり、削除することはできません。

enter image description here

あなたはandroid:background="@android:color/transparent"を使用してEDITTEXTで下線を隠すことができます。また、コードを使用してEditTextに入力を無効にすることをお勧めします。

<EditText 
    android:id="@+id/editText" 
    android:layout_height="wrap_content" 
    android:layout_width="match_parent" 
    android:maxLines="1"  <----- add this 
    android:inputType="text"/> <------ and this to disable enter in edittext 
+0

ありがとうございます!あなたのメールを見つけるにはどうすればいいですか? –

+0

あなたの質問にあるスクリーンショットを編集したり、チャットで私にpingしてください。 – Abhi

0

あなたは、あなたがのEditText内の一定のテキストを使用して空白型形式で塗りつぶしを作ることができ、この

 <LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:orientation="horizontal" > 


    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="30dp" 
     android:textSize="16sp" 
     android:textColor="#000000" 
     android:text="Your Name is" 
     android:id="@+id/textview1" /> 

    <EditText 
     android:layout_width="60dp" 
     android:textSize="16sp" 
     android:layout_height="40dp" 
     android:textColor="#000000" 
     android:id="@+id/edittext1"/> 

    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="30dp" 
     android:textSize="16sp" 
     android:textColor="#000000" 
     android:text=", This is the Level" 
     android:id="@+id/textview2" /> 

    <EditText 
     android:layout_width="60dp" 
     android:textSize="16sp" 
     android:layout_height="40dp" 
     android:textColor="#000000" 
     android:id="@+id/edittext2"/> 

</LinearLayout> 
+0

あなたが得ることができますEditTextで編集テキストからのテキストeditText =(EditText)findViewById(R.id.edittext1); 文字列= editText.getText()。toString(); – MKovac

+0

ありがとうございますが、他に解決策はありませんか?私は多くの入力があるので、これは私が疲れていると思う! :)これは単にedittextを使って行うことはできませんか? –

関連する問題