我一直有这个问题java.lang.IllegalStateException:Could not execute method of the activity
。我正计划执行一个 android 组件事件(例如 Button 事件 - 指示单击此按钮的次数)。这是此问题的代码片段:
interface Selection {
public void clicked();
}
public class ParentClass extends FragmentActivity {
// fTabs : FragmentTabHost
// tabs : Map<String, Selection>
private void initialize() {
// fistFrag : FirstChildClass = new FirstChildClass()
// secondFrag : SecondChildClass = new SecondChildClass()
tabs.put("first", firstFrag);
tabs.put("second", secondFrag);
fTabs.add(fTab.newTabSpec("first").setTitle("First"), firstFrag.getClass(), null)
fTabs.add(fTab.newTabSpec("second").setTitle("Second"), secondFrag.getClass(), null)
}
@Override
public void onBackPressed() {
tabs.get(fTabHost.getCurrentTabTag()).clicked();
}
}
public class FirstChildClass extends Fragment implements Selection {
// data : TextView
// hit : int = 0
@Override
public void clicked() {
data.setText(String.format("Hit Count: %d", ++hit));
}
}
public class SecondChildClass extends Fragment implements Selection {
// data : TextView
// hit : int = 0
@Override
public void clicked() {
data.setText(String.format("Hit Count: %d", ++hit));
}
}
我试图clicked()
通过调用消息来确保工作视图接口方法Logcat
并且它有效但是当我使用Button
上面的错误时总是提示我。我检查了是否data
为 null 并返回true
。我有点困惑,我试图检查方法的无效性data
是Activity
返回false
,但是当我通过接口访问任何方法覆盖时,它总是返回true
。有没有办法解决这个问题?