2013-02-16 41 views
0

我的MainActivity中有一個EditText。當用戶單擊NewFile活動時,此活動的佈局是透明的,因此仍然可以看到EditText。我希望能夠從NewFile活動中更新背景中的EditText。這是我試過的,這導致了NullPointerException。我明白爲什麼這不起作用,但我能做些什麼來獲得我期待的結果。另一個Activity的SetText()

NewFile.java

protected void onCreate(Bundle savedInstanceState) { 
     // TODO Auto-generated method stub 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.newfile); 

     newet = (EditTextLineNumbers) findViewById(R.id.ide); 
     newet.setText("Testing"); 
    } 
+0

如果我理解了正確的問題,那麼您的意思是您想修改與另一活動不同的活動中的文本編輯器的內容。如果是這種情況,請查看[Link](http://stackoverflow.com/questions/4909354/change-text-from-other-activity?rq=1)。底線是即使可能,這也不是一個好的做法。 P.S.請從標題中刪除android,android標籤是一個很好的指標! – 2013-02-16 19:16:53

+0

謝謝Saeid,我從現在開始不會把Android放在我的問題標題:)很高興知道。 – RapsFan1981 2013-02-16 19:32:27

回答

1

你的背景的EditText是不是從當前設置的佈局對於用戶來說,你正在得到例外。

關於更新UI,您可能需要2件事。

  1. 傳遞後臺活動的處理程序到新的
  2. 使新的作爲一個對話,而不是透明的活動。
  3. 使用處理程序來發送通知和更新UI相應
+0

謝謝rock_win。我認爲NewFile Dialog就是答案。 – RapsFan1981 2013-02-16 19:30:57

1

你怎麼認爲它會運行?你如何訪問不在你的活動佈局中的視圖..?說這是不可能的......

您可以通過使用佈局inflatter的服務給您的佈局讓你以前的佈局和的EditText從您的視圖

1

在NEWFILE活動,具有覆蓋的透明editTextView編輯文本(可有透明BG這個TextView的可能會給你錯覺,以爲它在後臺),現在更新這個editTextView

一旦你回去,從這個edittext(使用setActivityForResult和這些機制)獲取數據並填寫以前的活動。

相關問題