私は自分のアクティビティとアクティビティグループのすべてで利用可能にしたいコードセットを持っているアプリケーションを作成しています。しかし、これを達成するために、私は私の活動を拡大していますアクティビティとアクティビティグループの拡張
//custom Activity
public abstract class BaseActivity extends Activity
//custom ActivityGroup
public abstract class BaseActivityGroup extends ActivityGroup
//implemented activities in my app
public class PickUser extends BaseActivity
//and
public class Home extends BaseActivityGroup
今の事ですが、私はBaseActivityで書くカスタムコードは、私は(現在の実装のように)あまりにもBaseActivityGroupで同じことを書かなければならないものは何でも。これはコードシンクの問題が発生しやすく、良いテクニックではないと思います。 BaseActivity
クラスから考えられる -
だから、どのように私は私だけBaseActivity
でカスタムコードを記述し、私のBaseActivityGroup
はActivityGroup
を拡張するような方法で私の拡張を行うことができますか?
私はアンドロイドでアンドロイドがこれを行う方法を観察し、そのActivityGroup場合活動クラスを拡張します。そして、私はまた、実際に(拡張活動です)BaseActivityを拡張(BaseActivityGroupとして知られている)私のカスタムActivityGroupクラスを書きたいです。
アイデア/提案はありますか?
しかし、私はアクティビティメソッドにアクセスする必要もありませんActivityDelegateクラスを保持します。ではない? – waqaslam
例を編集して、アクティビティがデリゲートの参照として保存されるようにしました。次に、必要なすべての一般的なActivityメソッドにコールバックすることができます。 –
しかし、どのように活動のライフサイクルを処理するには?あなたの実装に 'super.onCreate(savedInstanceState);'がありません。これを解決するには? – waqaslam