public class RootActivity extends Activity
{
static LiLa superLayout;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
main();
setContentView(superLayout);
}
private void main()
{
// LiLa is a class which extends LinearLayout
superLayout = new LiLa(this);
//DownloadData is an AsyncTask
DownloadData mDownloadData = new DownloadData(this);
mDownloadData.execute();
}
}
Таким образом, AsyncTask меняет некоторые части superLayout, сейчас в AsyncTak я делаю:
RootActivity.superLayout.tv.setText("hello");
Было бы лучше изменить:
static LiLa superLayout;
на
LiLa superLayout;
и:
DownloadData mDownloadData = new DownloadData(this);
на
DownloadData mDownloadData = new DownloadData(this, superLayout);
Чтобы можно было выполнить в AsyncTask:
superLayout.tv.setText("hello");
Так вот вопрос: лучше ли получить доступ к таким параметрам (например, к TextView TV) или к способу изменения этого TextView статическим способом или с помощью параметра?
Спасибо, что читаете меня.
РЕДАКТИРОВАТЬ: кстати, в моем коде это немного более грязно, это может быть больше похоже на
RootActivity.superLayout.class1.class2.tv.setText("hello");