0

アクティビティ a があり、アクション バーのロゴを使用して戻りたいと考えています。通常、これは次のように行われます。

ActionBar actionBar= getActionBar();
actionBar.setDisplayUseLogoEnabled(false);
actionBar.setDisplayHomeAsUpEnabled(true);

イベントを定義するには、通常はアクティビティ onOptionsItemSelected() を書き直す必要がありますが、このイベントをヘルパー クラスから書き直したい場合はどうすればよいでしょうか。

私のコードは次のとおりです。

class Helper{
    public void init(Activity a) {
    ActionBar actionBar= a.getActionBar();
    actionBar.setDisplayUseLogoEnabled(false);
    actionBar.setDisplayHomeAsUpEnabled(true);
    ?????? a.onOptionsItemSelected(?MenuItem?)
    }}

actionsBar ロゴ クリックの MenuItem オブジェクトを見つける方法

4

1 に答える 1

1

これを呼び出し元クラスに配置する必要があります。

@Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()) {
        case android.R.id.home:
            // DO SOMETHING WHEN BUTTON PRESSED!
            return true;
        }
        return super.onOptionsItemSelected(item);
    }

ヘルパークラスでそれを行う唯一の方法は、ヘルパーをフラグメントとして使用し、setHasOptionsMenu(true); を使用することです。そのフラグメントで。

于 2012-12-16T11:07:02.843 に答える