我在将可编辑文本值存储在字符串中时遇到问题。我只想存储用户输入的值,将其存储在某个变量中。我在存储一个值之后使用toast来检查值是否存储在其中并且toast没有显示任何值。我尝试以下代码,但没有发现它有用。
package com.example.electropollsys;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.Window;
import android.view.WindowManager;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
public class CreateAcc extends Activity {
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.create_acc);
final Button b = (Button) findViewById(R.id.button3);
b.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Intent i = new Intent(CreateAcc.this, SignIn.class);
i.addFlags(
Intent.FLAG_ACTIVITY_CLEAR_TOP |
Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(i);
}
});
final Button a = (Button) findViewById(R.id.button1);
a.setOnClickListener(new View.OnClickListener() {
@SuppressLint("ShowToast")
public void onClick(View v){
EditText input1= (EditText)findViewById(R.id.fname1);
String fname = input1.getEditableText().toString();
EditText input2= (EditText) findViewById(R.id.lname1);
String lname = input2.getEditableText().toString();
Toast.makeText(CreateAcc.this,"...."+fname+"...." , Toast.LENGTH_LONG);
Toast.makeText(CreateAcc.this,"...."+lname+"...." , Toast.LENGTH_LONG);
}
});
}
}
答案 0 :(得分:3)
尝试:
Toast.makeText(CreateAcc.this,"...."+fname+"...." , Toast.LENGTH_LONG).show();
Toast.makeText(CreateAcc.this,"...."+lname+"...." , Toast.LENGTH_LONG).show();
除非调用show()
方法,否则不会显示Toasts。 makeText()
方法返回Toast对象,您必须使用该对象来显示Toast。
您通常会收到关于此问题的lint警告,但您似乎已使用@SuppressLint("ShowToast")
对其进行了压制。
答案 1 :(得分:0)
你确实喜欢这样。
Toast.makeText(CreateAcc.this,"...."+fname+"...." , Toast.LENGTH_LONG);
使用它启动toast对象并返回对象,但是要显示你需要在该对象上调用show方法的Toast通知。
而不是写这个。
Toast.makeText(CreateAcc.this,"...."+fname+"...." , Toast.LENGTH_LONG).show();
OR
Toast toast = Toast.makeText(CreateAcc.this,"...."+fname+"...." , Toast.LENGTH_LONG);
toast.show();
答案 2 :(得分:0)