如何从父活动调用正在运行的子活动的方法?

4

我正在开发一个安卓应用,它有3个选项卡,是在MainActivity.java中创建的。每个选项卡都有自己的活动。这些活动中有一个名为“Refresh()”的方法,用于更新该选项卡中的列表视图。当用户点击按钮时,将调用“refreshTab(View v)”方法。

// Tab refreshen
public void refreshTab (View v) {
    Activity MyActivity = this.getCurrentActivity();        
    MyActivity.Refresh();       
}

这里出现了一个错误:"The Method Refresh() is undefined for the type Activity",但是"MyActivity"已经填充了选项卡活动。 我该如何让它工作呢?

2个回答

3

您需要将活动转换为您的活动类型。现在,您正在尝试调用Android类活动,该活动没有“刷新”功能。


0
你的按钮处理程序有点过于复杂了(即使只有两行代码)...
可以尝试简化一下,像这样写:
```python # 代码示例 def button_handler(): # 处理逻辑 ```
这样会更加清晰易懂。
// Tab refreshen
public void refreshTab (View v) {  
    Refresh();       
}

如果您在活动类中直接定义了OnClickListener,但仍需要添加一些指示,则可能需要使用以下代码,其中MyClassType是扩展Activity的类名:
// Tab refreshen
public void refreshTab (View v) {  
    MyClassType.this.Refresh();       
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接