在我的onResume()
我正在运行一个新的处理程序,它运行以下代码行:
adapter = new FeedListAdapter(this, feed);
list.setAdapter(adapter);
现在,当我将此代码移动到 Handler 中时,this
第一行内部的内容被禁止,因为显然它位于可运行文件中,如下所示:
new Handler().postDelayed(new Runnable() {
public void run() {
adapter = new FeedListAdapter(this, feed);
list.setAdapter(adapter);
}
}, 500);
现在,我的问题是如何访问我所在的 Fragment 而无需创建存储当前 Fragment 的方法/变量?
我通过执行以下操作解决了这个问题:
private FeedListActivity myInstance(){
return this;
}
并更改this
为myInstance()
, 但这似乎是一种不好的做法。与创建一个新变量来存储片段相同。有没有办法可以调用我正在运行的片段?
也许这会让我清楚我想要做什么:
new Handler().postDelayed(new Runnable() {
public void run() {
adapter = new FeedListAdapter(getFragment(), feed);
list.setAdapter(adapter);
}
}, 500);
感谢所有答案。