2016-08-21 252 views
-5

我想在Toast中显示7 EditText的信息,所以我把编辑文本信息放在7个字符串变量中,但我不知道如何。 这里是我写的东西:在Toast中显示字符串变量

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

您是否在寻找'Concatination'?只需使用StringBuilder。 – Enzokie

回答

3

如果你想显示的EditText所有内容在一个Toast,那么就使用串联

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

StringBuilder类:

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

这就是android建议

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是你吗?”;

所以一切融合在一起是没有SENCE为应用程序的用户...

解决方法:

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();