簡體   English   中英

從EditText獲取字符串

[英]Getting a string from EditText

我試圖獲取用戶在edittext視圖中編寫的文本並將其存儲在String值中,然后在我創建的包含兩個String對象的類中設置此String值,但是當我運行代碼時,它給了我一個提示。空指針異常的錯誤,因為“ WrittenSubj”和“ WrittenDeta”等於空,我該如何解決這個問題?

public class TaskDetails extends AppCompatActivity {
EditText WrittenSubj;
EditText WrittenDeta;
Button SaveBut;
TheTask theTask;
private Database database;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_task_details);
    WrittenSubj=(EditText)findViewById(R.id.thesubject);
    WrittenDeta=(EditText)findViewById(R.id.theDetails);
    SaveBut=(Button)findViewById(R.id.SaveButton);

    String subj=WrittenSubj.getText().toString();
    String deta=WrittenDeta.getText().toString();
    theTask.setSubject(subj);
    theTask.setDetails(deta);

}

我認為TheTask是您的Beam類,並且您尚未初始化它。

初始化它。

theTask = new TheTask();

並使用

theTask.setSubject(subj);
theTask.setDetails(deta);

您必須先初始化TheTask類,然后再使用如下所示的類

TheTask theTask = new TheTask(); 

然后使用如下的Task對象

theTask.setSubject(subj);
theTask.setDetails(deta);

問題到來是因為您正在初始化edittext,並在方法onCreate()OnCreate()獲取其文本getText()是創建活動時調用的方法,因此在創建活動時,您的編輯文本顯然將具有null / empty值。 因此,在實際輸入文本之后,您必須在任何事件單擊或按鈕單擊時調用edittext.getText()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM