Android 调用最终可编辑项以在toast中使用

Android 调用最终可编辑项以在toast中使用,android,onclick,toast,android-edittext,Android,Onclick,Toast,Android Edittext,我不确定如何处理这个问题。 我在这里接受了其他人给出的一些指导,现在当我按下按钮(显示器)时,它崩溃了 我希望能够在按下按钮时发布祝酒通知,然后在几秒钟后让它消失 另外,是否有一种方法可以使它在某些信息(如第2行)为空的情况下仍然创建toast通知 basic.java: public class Basic extends Activity { public void onCreate(Bundle savedInstanceState) { super.onCreate(saved

我不确定如何处理这个问题。 我在这里接受了其他人给出的一些指导,现在当我按下按钮(显示器)时,它崩溃了

我希望能够在按下按钮时发布祝酒通知,然后在几秒钟后让它消失 另外,是否有一种方法可以使它在某些信息(如第2行)为空的情况下仍然创建toast通知

basic.java:

public class Basic extends Activity {
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.basic);
    Spinner spinner = (Spinner) findViewById(R.id.Spinner01);
    ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
            this, R.array.state_array, android.R.layout.simple_spinner_item);
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    spinner.setAdapter(adapter);


final Button display = (Button) findViewById(R.id.Button01);

display.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
 EditText firstField = (EditText) findViewById(R.id.First);
    EditText lastField = (EditText) findViewById(R.id.Last);
    EditText line1Field = (EditText) findViewById(R.id.Line1);
    EditText line2Field = (EditText) findViewById(R.id.Line2);
    EditText cityField = (EditText) findViewById(R.id.City);
    EditText stateField = (EditText) findViewById(R.id.Spinner01);
    EditText zipField = (EditText) findViewById(R.id.Zip);
    //EditText phoneField = (EditText) findViewById(R.id.Telephone);

    final Editable firstName = firstField.getText();
    final Editable lastName = lastField.getText();
    final Editable lineOne = line1Field.getText();
    final Editable lineTwo = line2Field.getText();
    final Editable city = cityField.getText();
    final Editable state = stateField.getText();
    final Editable zip = zipField.getText();
    //final Editable phoneNumber = phoneField.getText();
     Toast toDisplay = Toast.makeText(null, firstName, 10);
     toDisplay.show();
     } 
    });
 }
    }
公共类基本扩展活动{
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.basic);
微调器微调器=(微调器)findViewById(R.id.Spinner01);
ArrayAdapter=ArrayAdapter.createFromResource(
这个,R.array.state\u数组,android.R.layout.simple\u微调器\u项);
setDropDownViewResource(android.R.layout.simple\u微调器\u下拉菜单\u项);
旋转器。设置适配器(适配器);
最终按钮显示=(按钮)findViewById(R.id.Button01);
display.setOnClickListener(新的OnClickListener(){
公共void onClick(视图v){
EditText firstField=(EditText)findViewById(R.id.First);
EditText lastField=(EditText)findViewById(R.id.Last);
EditText Line1字段=(EditText)findViewById(R.id.Line1);
EditText line2Field=(EditText)findViewById(R.id.Line2);
EditText cityField=(EditText)findViewById(R.id.City);
EditText stateField=(EditText)findViewById(R.id.Spinner01);
EditText zipField=(EditText)findViewById(R.id.Zip);
//EditText phoneField=(EditText)findViewById(R.id.Telephone);
最终可编辑的firstName=firstField.getText();
最终可编辑的lastName=lastField.getText();
最终可编辑lineOne=line1Field.getText();
最终可编辑的lineTwo=line2Field.getText();
最终可编辑城市=cityField.getText();
最终可编辑状态=stateField.getText();
最终可编辑zip=zipField.getText();
//最终可编辑的phoneNumber=phoneField.getText();
Toast-toDisplay=Toast.makeText(null,firstName,10);
toDisplay.show();
} 
});
}
}
我希望祝酒词的布局是多行的,并且看起来像一个邮政地址

最后一个
街道1号线
第2行
城市、州邮政编码

Toast.makeText(Change.this, "First Last \n Street Line 1 \n Line 2 \n City, State Zip", Toast.LENGTH_SHORT).show();
通过使用上面的toast,我们可以多行显示输出

Toast.makeText(Change.this, firstField.getText().toString()+"\n"+ lastField.getText().toString()+"\n"+ City.getText().toString(), Toast.LENGTH_SHORT).show();

当我尝试将其与状态微调器一起使用时,我无法使其显示,我尝试了stateField.getSelectedItemId(),上面的声明是spinner stateField=(微调器)findViewById(R.id.Spinner01);但它只返回数组中的值,而不是州的实际缩写(例如,阿拉巴马州的“AL”)。在Toast中使用“stateField.getSelectedItem().toString()”作为微调器字段