簡體   English   中英

當TextView在其他布局中時,如何設置Text()(TextView)?

[英]How can I setText() (TextView) when the TextView is in another layout?

我的應用程序有2種布局(主布局)和(首選項(偏好)布局)。

當MainActivity加載時,我設置了setContentView(R.layout.main); -主要布局

然后,我需要在首選項布局中為TextView設置文本,但是它永遠都不會被設置。

LayoutInflater factory = getLayoutInflater();
 View inflate = factory.inflate(R.layout.prefs, null);
    TextView eSerial = (TextView) inflate.findViewById(R.id.editTextSerial);
    mSerial = "Test"; 
    eSerial.setText(mSerial);

我進入偏好頁面的方式是使用菜單,然后加載頁面,而無需更改TextView

我已經搜索了,但是還沒有找到答案。

請幫忙。

謝謝。

簡短的答案:您不能這樣做。

長答案:

如果您自己啟動首選項頁面,則必須創建一個Intent來啟動它。 調用putExtra()將文本存儲在該intent中。 在您的PreferenceActivity中,調用getIntent()。getStringExtra()以獲取文本,然后將其放入TextView中。

當菜單開始您的偏好活動時,您可以使用值填充視圖。 user1853479指出了執行此操作的一種方法,即將值添加到意圖中。 假設您要存儲這些首選項以備將來運行,還可以為該特定運行設置任何首選項,並將它們保存在本地存儲中。 另一種方法是創建一個單例來存儲您的設置,在應用程序啟動時加載它,根據需要進行修改和保存,然后從任何活動中訪問它。

暫無
暫無

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

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