需要软件设计指导(Android库项目)

时间:2016-08-08 12:44:25

标签: android design-patterns shared-libraries

  • 我的主要活动(" MainActivity")
  • 我在" Android项目库中有一个视图"。我想在几个应用程序中使用此视图,这就是我在库中添加此视图的原因。
  • 我可以使用我的应用程序中的视图

但现在出现了问题。

我想从我的视图中与我的Apps MainActivity进行互动。

如果视图将在图书馆的应用程序中,我只需要打电话......

(MainActivity)context.myfunction()

......在我看来。

但是对于图书馆,我的观点并不了解MainActivity,因为它超出了项目范围。

如何从我的视图中与Activity进行交互,该视图位于库中?任何提示?

1 个答案:

答案 0 :(得分:0)

不确定这是否是一个好的解决方案,但我在这里发布。它可能会帮助其他人。

我在我的图书馆计划中创建了一个界面:

public interface InteractActivity {
    public void interact(String sCommand, List<Object> objects);
}

我在我的活动上实现了界面:

@Override
    public void interact(String sCommand, List<Object> objects) {
        // TODO Auto-generated method stub
        if(sCommand.equals("mycommand")){
            do something ...
        }
    }

然后我只是从我的视图中调用该方法(在我的库项目中):

((InteractActivity) context).interact("mycommand",myparameters);