3つの別々のアクティビティでactionBar(actionBarSherlock)リストの同じコードを書き直していることに気づきました。3つすべてが同じactionBarを使用しており、アクティビティ#1、#2、#3を起動する3つのアイテムがあります。
getSupportActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);
ArrayAdapter<CharSequence> list = ArrayAdapter
.createFromResource(this, R.array.action_list, android.R.layout.simple_dropdown_item_1line);
list.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
getSupportActionBar().setListNavigationCallbacks(list, this);
getSupportActionBar().setListNavigationCallbacks(adapter, this);
getSupportActionBar().setSelectedNavigationItem(position);
2つの質問があります:
この場合、3つのフラグメントで1つのアクティビティを使用する必要がありますか?私の活動は、リストビュー、マップビュー、およびフォームビューです。私の場合、これらのビューのそれぞれが画面全体を使用するため、これがフラグメントを使用するのに適切なケースであるかどうかはわかりません。
3つの異なるアクティビティを使用して、上記のコードを使用してActionBarを構成することを唯一の目的とする新しいクラスを作成して、初期化コードが1か所にのみ存在するようにすることはできますか?
何かのようなもの:
public class setupActionBar {
private ActionBar myBar;
public setupActionBar(ActionBar myBar){
this.myBar = myBar;
//Do Initialization on myBar;
}
public ActionBar getMyBar(){
return myBar;
}
}