![](/img/trans.png)
[英]Android - pass text from one class to another class via textview
[英]Android Change TextView text from another class
我在MainActivity
有一個TextView
,我想在另一個類中更改TextView
文本。
如何從另一個類訪問MainActivity
TextView
?
我嘗試了以下內容
TextView textView =(TextView)findViewById(R.id.myTextView);
textView.setText( “文本”);
但調用setText()
時應用程序崩潰
你必須使用runOnUiThread(new Runnable()...
見如下:
import android.content.Context;
private class AnotherClass {
protected MainActivity context;
public AnotherClass(Context context){
this.context = (MainActivity) context;
}
public void updateTV(final String str1){
context.runOnUiThread(new Runnable() {
@Override
public void run() {
context.textView.setText(str1);
}
});
}
}
如果要更新TextView的文本,可能的方法是編輯由類共享的公共數據模型中的文本。 如果稍后調用onResume
,則可以從模型中讀取新值並更新TextView。
我建議使用處理程序來更新該Activity的內容。 這只是一種方法,有多種方法可以做到這一點。
句柄的整個目的是讓一些后台進程/線程將信息傳遞到UI線程中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.