我有一个简单的hiearachy活动,其中:A是抽象的,B,C等继承自A. 我需要一个处理网络连接的地方,最好将它放在父活动(A)中。但是,我没有看到如何阻止我的子活动(B,C)中的代码执行。另外,在子活动(B,C)的每个onResume方法中,我都有额外的网络代码,不应该执行。
那么,除了父母onCreate +“if”之外,还有什么方法除了孩子onCreate +“if”in child onResume?这种方法应该更简洁。
答案 0 :(得分:0)
在抽象活动A中保留一个布尔值,如isNetworkAvliable。在A的Oncreate或A的onResume上检查网络是否存在(必须在所有工作之前调用B和C中的super.onResume)并将网络放入if(isNetworkAvliable)。
答案 1 :(得分:0)
试试这个......
即使B和C是从A继承的,我也不认为处理网络的方法是 在B和C中执行,直到您明确地调用它们。
如果你想在A类中处理网络连接,那么在中创建一个方法
A类为public void handleConnection()
,然后从B类和C类进行调用
onCreate()
和onResume()
为super.handleConnection();