我正在开发一个测验应用程序,其中包括所有活动中的抽屉布局。抽屉中的内容是相同的,我希望它在所有活动中。通过搜索谷歌我找到了一个解决方案,在一个活动中声明抽屉并继承在所有活动中,它也运作良好。我附上下面的代码。 现在的问题是我需要Tab在一个活动中,所以我不知道如何在这里继承2个活动[这是不可能的]。 任何人都可以帮我解决这个问题吗?
简单地说, 我有一个选项,如果我想要两个课,我只能扩展我的课程吗?
DrawActivity.java
public void onCreateDrawer() {
// R.id.drawer_layout should be in every activity with exactly the same id.
drawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
drawerToggle = new ActionBarDrawerToggle(DrawActivity.this,drawerLayout,R.drawable.ic_drawer2,R.string.app_name,R.string.app_name)
{
public void onDrawerClosed(View view)
{
getActionBar().setTitle(R.string.app_name);
}
public void onDrawerOpened(View drawerView)
{
getActionBar().setTitle(R.string.app_name);
}
};
drawerLayout.setDrawerListener(drawerToggle);
getActionBar().setDisplayHomeAsUpEnabled(true);
getActionBar().setHomeButtonEnabled(true);
//getActionBar().setBackgroundDrawable(new ColorDrawable(Color.RED));
SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
if (settings.getString("logged","").toString().equals("logged")) {
layers = getResources().getStringArray(R.array.layers_array1);
flag=0;
}
else {
layers = getResources().getStringArray(R.array.layers_array);
flag=1;
}
drawerList = (ListView) findViewById(R.id.left_drawer);
drawerList.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,layers));
drawerList.setSelector(R.color.darkgreen);
drawerList.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int pos, long arg3) {
selectItemFromDrawer(pos);
}
});
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
if (drawerToggle.onOptionsItemSelected(item)) {
return true;
}
return super.onOptionsItemSelected(item);
}
@Override
protected void onPostCreate(Bundle savedInstanceState) {
super.onPostCreate(savedInstanceState);
drawerToggle.syncState();
}
@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
drawerToggle.onConfigurationChanged(newConfig);
}