Tạo một Class (nói BaseActivity) mở rộng hoạt động, và ghi đè onCreateOptionsMenu
và onOptionsItemSelected
chức năng.
public class BaseActivity extends Activity {
// Activity code here
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.options_menu, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.item:
// do what you want here
return true;
default:
return super.onOptionsItemSelected(item);
}
}
}
Bây giờ, trong 15-16 hoạt động khác, thay vì mở rộng một hoạt động, bạn nên mở rộng BaseActivity.
public class FooActivity extends BaseActivity {
// Activity code here
}
Bằng cách này, tất cả các hoạt động của bạn đều lấy được menu tùy chọn. Đối với các hoạt động mà bạn muốn menu tùy chọn bị tắt, bạn có thể ghi đè lại nó trong hoạt động cụ thể đó.
public class BarActivity extends BaseActivity {
// Activity code here
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Do Nothing
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Do Nothing
}
}
Hy vọng nó không cung cấp cho bạn sự cố trong tệp kê khai.
Ngay cả khi tôi nghĩ về điều đó nhưng tôi đã có một customactivity để cài đặt trên thanh tiêu đề trong mọi hoạt động. Sẽ thử thực hiện nó trong chính nó. – sunil
có, vui lòng làm, nó phải hoạt động. Đồng thời báo cáo kết quả của bạn. :) – st0le
Liệu nó có hoạt động không? Không ai báo cáo kết quả: c –