2016-08-21 6 views
-5

Toast에 7 EditText의 정보를 표시하고 싶습니다. 따라서 7 개의 문자열 변수에 텍스트 정보를 입력했는데 어떻게되는지 모릅니다. 여기 내가 쓴 것입니다 :토스트의 문자열 변수 표시

public class MainActivity extends Activity { 
     EditText ed1; 
     EditText ed2; 
     EditText ed3; 
     EditText ed4; 
     EditText ed5; 
     EditText ed6; 
     EditText ed7; 
     Button btn; 

     @Override 
     protected void onCreate(Bundle savedInstanceState) { 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.main2); 
      showinfo(); 
     } 

     private void showinfo() { 
      ed1= (EditText) findViewById(R.id.editText1); 
      ed2= (EditText) findViewById(R.id.editText2); 
      ed3= (EditText) findViewById(R.id.editText3); 
      ed4= (EditText) findViewById(R.id.editText4); 
      ed5= (EditText) findViewById(R.id.editText5); 
      ed6= (EditText) findViewById(R.id.editText6); 
      ed7= (EditText) findViewById(R.id.editText7); 
      btn= (Button) findViewById(R.id.button1); 
      /////// 
      btn.setOnClickListener(new OnClickListener() { 

       @Override 
       public void onClick(View arg0) { 
        // TODO Auto-generated method stub 
        String str1 = ed1.getText().toString(); 
        String str2 = ed2.getText().toString(); 
        String str3 = ed3.getText().toString(); 
        String str4 = ed4.getText().toString(); 
        String str5 = ed5.getText().toString(); 
        String str6 = ed6.getText().toString(); 
        String str7 = ed7.getText().toString(); 
        //////////// 
        Toast.makeText(getApplicationContext(), ,Toast.LENGTH_LONG).show(); 
       } 
      }); 
     } 

어떻게 Toast의 모든 문자열 변수를 표시 할 수 있습니까?

+1

를 찾고 계십니까? StringBuilder 만 사용하면됩니다. – Enzokie

답변

3

당신은 연결을 한 후 바로 사용, 하나의 Toast

String concatenatedText = str1 + str2 + str3 + ... 

또는 StringBuilder 클래스 EditText의 모든 내용을 표시하려면 다음

StringBuilder sb = new StringBuilder(); 
sb.append(str1); 
sb.append(str2); 
sb.append(str3); 
String concatenatedText = sb.toString(); 

을 단순히 아래, 두 번째 인수로 결과를 전달합니다 :

Toast toast = Toast.makeText(context, concatenatedText, duration); 
0

이것은 01입니다.는

Context context = getApplicationContext(); 
CharSequence text = "Hello toast!"; 
int duration = Toast.LENGTH_SHORT; 

Toast toast = Toast.makeText(context, text, duration); 
toast.show(); 

가 확실 같은 것을 할 수에 대한 제안 :

컨텍스트 컨텍스트 = getApplicationContext를(); 갈 그런 식으로 포인트 문자열 텍스트 = str1과 +과 str2 + STR3 + ...

StringBuilder sb = new StringBuilder(); 
sb.append(str1); 
sb.append(str2); 
sb.append(str3); 
String finalMsgText = sb.toString(); 

Toast toast = Toast.makeText(context, finalMsgText , Toast.LENGTH_SHORT); 
toast.show(); 

은 그

인 str1 = "안녕하세요"; str2 = "Xoce"; str3 = "잘 있었 니?";

는 "당신을 HelloXoceHow입니까?";처럼

다음 토스트의 MSG가 될 것입니다

그래서 모두가 함께 응용 프로그램 사용자에 대한 sence을하지 않습니다

...

해결 방법 :`Concatination`에 대한

StringBuilder sb = new StringBuilder(); 
sb.append(str1).append(", ");; 
sb.append(str2).append(", ");; 
sb.append(str3); 
String finalMsgText = sb.toString(); 

Toast toast = Toast.makeText(context, finalMsgText , Toast.LENGTH_SHORT); 
toast.show();